|
发表于 2010-11-27 13:33:35
|
显示全部楼层
回复【2楼】ddlovepp
回复【1楼】sharpufo 风生水起月皎白
-----------------------------------------------------------------------
但是改成printf("Ture is: %f\n False is: %f\n",a,b);
输出的是
Ture is: 0.000000
False is:0.000000
或printf("Ture is: %s\n False is: %s\n",a,b);
就不能正常输出,显示段错误。
-----------------------------------------------------
BOOL值转化成浮点数,一般没这个必要吧?
真的要转化要加强制类型转化,8位cpu用float,呵呵,太奢侈了。。。
试试printf("Ture is: %f\n False is: %f\n",(float)a,(float)b);
“printf("Ture is: %s\n False is: %s\n",a,b);”
a是一个unsigned char类型,你想把a作为一个字符串输出怎么能正常,不明白为什么要这样搞.记住%s对应的是一个字符串指针 char *.
如果是要按字符输出应该是
“printf("Ture is: %c\n False is: %c\n",a,b);”,不过1和0对应的ASC都是不能显示的控制字符。
建议楼主还是仔细看看C数据类型基础. |
|