(1)unsigned short A = 10;
printf("~A = %u\n", ~A);
(2)char c=128;
printf("c=%d\n",c);
这两个输出是什么啊?
我不会阿
第一个 %u是什么类型的输出阿?我看资料说是uint,这是什么类型阿?我怎么第一次听说。
下面的第二道也看不懂。
高手帮忙解释下
Thanks!
----------------解决方案--------------------------------------------------------
把10换作二进制按位取反,再换作无符号整数
这是用笔写
第二个查ASCII码看看是什么字符
[此贴子已经被作者于2007-8-27 20:02:20编辑过]
----------------解决方案--------------------------------------------------------
(2)char c=128;
printf("c=%d\n",c);
将字符型转化为整数型.
但字符型的c,能初始化为128吗?
----------------解决方案--------------------------------------------------------
(2)char c=128;
printf("c=%d\n",c);
将字符型转化为整数型.
但字符型的c,能初始化为128吗?
输出-128就是了,如果char是有符号的话(部分编译器默认是无符号)
by 雨中飞燕 QQ:78803110 QQ讨论群:5305909
请大家不要用TC来学习C语言
C/C++算法习题(OnlineJudge):[url]http://yzfy.org/[/url]
----------------解决方案--------------------------------------------------------
看你问的题目你应该是刚学者吧.最好把书看好了,书上对各种输出方式都是有讲解的.
----------------解决方案--------------------------------------------------------
第一题:
主要考你位运算和输出(很基础)
位运算符 " ~ " 作用是取反
%u :要你输出 unsigned 十进制数
知道这些基础知识,解这个题很简单拉
第二题:
主要考的还是对位的理解
char 占8个字节 其中最高位是用来存放符号的,所以char的指的范围在-127---127 之间
答案:
第一题: 65525
第二题: 不确的 128越限
----------------解决方案--------------------------------------------------------
字符型不应该还有存放符号的。不过按整形输出,最高位当符号位看。
----------------解决方案--------------------------------------------------------
我也是新学的,我也整不懂,如果CHAR初值超过了范围那他们将输出哪一个?怎么样输出的?依据是什么?
谁能解释清楚点.
----------------解决方案--------------------------------------------------------