Demo for GetTypeName library, using all defined types.

Dependencies:   GetTypeName mbed

Committer:
frankvnk
Date:
Sun Feb 15 21:18:58 2015 +0000
Revision:
0:51ba9e864352
initial release

Who changed what in which revision?

UserRevisionLine numberNew contents of line
frankvnk 0:51ba9e864352 1 #include "mbed.h"
frankvnk 0:51ba9e864352 2 #include "GetTypeName.h"
frankvnk 0:51ba9e864352 3
frankvnk 0:51ba9e864352 4 int main()
frankvnk 0:51ba9e864352 5 {
frankvnk 0:51ba9e864352 6 char a = 65;
frankvnk 0:51ba9e864352 7 uint8_t b = 20;
frankvnk 0:51ba9e864352 8 signed char c = -30;
frankvnk 0:51ba9e864352 9 int8_t d = -40;
frankvnk 0:51ba9e864352 10 unsigned short e = 50;
frankvnk 0:51ba9e864352 11 uint16_t f = 60;
frankvnk 0:51ba9e864352 12 short g = -70;
frankvnk 0:51ba9e864352 13 int16_t h = -80;
frankvnk 0:51ba9e864352 14 unsigned int i = 90;
frankvnk 0:51ba9e864352 15 uint32_t j = 100;
frankvnk 0:51ba9e864352 16 int k = -110;
frankvnk 0:51ba9e864352 17 int32_t l = -120;
frankvnk 0:51ba9e864352 18 unsigned long long m = 130;
frankvnk 0:51ba9e864352 19 uint64_t n = 140;
frankvnk 0:51ba9e864352 20 long long o = -150;
frankvnk 0:51ba9e864352 21 int64_t p = -160;
frankvnk 0:51ba9e864352 22 float q = 1.7;
frankvnk 0:51ba9e864352 23 double r = 1.8;
frankvnk 0:51ba9e864352 24 bool s = 1;
frankvnk 0:51ba9e864352 25
frankvnk 0:51ba9e864352 26 printf("Type name for <char> '%c' is %s\r\n", a, GetTypeName(a));
frankvnk 0:51ba9e864352 27 printf("Type name for <uint8_t> %d is %s\r\n", b, GetTypeName(b));
frankvnk 0:51ba9e864352 28 printf("Type name for <signed char> %d is %s\r\n", c, GetTypeName(c));
frankvnk 0:51ba9e864352 29 printf("Type name for <int8_t> %d is %s\r\n", d, GetTypeName(d));
frankvnk 0:51ba9e864352 30 printf("Type name for <unsigned short> %d is %s\r\n", e, GetTypeName(e));
frankvnk 0:51ba9e864352 31 printf("Type name for <uint16_t> %d is %s\r\n", f, GetTypeName(f));
frankvnk 0:51ba9e864352 32 printf("Type name for <short> %d is %s\r\n", g, GetTypeName(g));
frankvnk 0:51ba9e864352 33 printf("Type name for <int16_t> %d is %s\r\n", h, GetTypeName(h));
frankvnk 0:51ba9e864352 34 printf("Type name for <unsigned int> %d is %s\r\n", i, GetTypeName(i));
frankvnk 0:51ba9e864352 35 printf("Type name for <uint32_t> %d is %s\r\n", j, GetTypeName(j));
frankvnk 0:51ba9e864352 36 printf("Type name for <int> %d is %s\r\n", k, GetTypeName(k));
frankvnk 0:51ba9e864352 37 printf("Type name for <int32_t> %d is %s\r\n", l, GetTypeName(l));
frankvnk 0:51ba9e864352 38 printf("Type name for <unsigned long long> %lld is %s\r\n", m, GetTypeName(m));
frankvnk 0:51ba9e864352 39 printf("Type name for <uint64_t> %lld is %s\r\n", n, GetTypeName(n));
frankvnk 0:51ba9e864352 40 printf("Type name for <long long> %lld is %s\r\n", o, GetTypeName(o));
frankvnk 0:51ba9e864352 41 printf("Type name for <int64_t> %lld is %s\r\n", p, GetTypeName(p));
frankvnk 0:51ba9e864352 42 printf("Type name for <float> %f is %s\r\n", q, GetTypeName(q));
frankvnk 0:51ba9e864352 43 printf("Type name for <double> %f is %s\r\n", r, GetTypeName(r));
frankvnk 0:51ba9e864352 44 printf("Type name for <bool> %d is %s\r\n", s, GetTypeName(s));
frankvnk 0:51ba9e864352 45
frankvnk 0:51ba9e864352 46 // Store GetTypeName in a variable
frankvnk 0:51ba9e864352 47 const char *VarType;
frankvnk 0:51ba9e864352 48 VarType = GetTypeName(a);
frankvnk 0:51ba9e864352 49 printf("'%c' is of '%s' type\r\n", a, VarType);
frankvnk 0:51ba9e864352 50
frankvnk 0:51ba9e864352 51 // Check whether GetTypeName is of 'char' type.
frankvnk 0:51ba9e864352 52 // Note that strcmp returns 0 when both strings are equal.
frankvnk 0:51ba9e864352 53 if(!strcmp(GetTypeName(a),"char")) printf("'%c' is of 'char' type\r\n", a);
frankvnk 0:51ba9e864352 54 }