00问答网
所有问题
c语言 void main () { unsigned short i,j; scanf ("%u,%u",&i,&j); printf("j=%x\ni=%x\n",j,i); }
为什么i输出为0?
举报该问题
其他回答
第1个回答 2012-10-23
因为%u是读取无符号十进制整数的,也就是说定义i,j为unsigned int i,j时可以使用%u能够正确读取输入。
i,j是无符号短整形,scanf的格式是scanf ("%hu,%hu",&i,&j); u前面的h代表读取短整数,u代表unsigned。
如果是unsigned long i,j,那么可以使用scanf ("%lu,%lu",&i,&j)来读取。l代表读取长整数。本回答被提问者采纳
相似回答
大家正在搜
相关问题
c语言中的 %u 什么意思啊?
C语言的scanf函数中,关于unsigned型变量所需的数...
C语言的%ld、%d、%U是啥意思啊?
急!求救!!c语言的课后作业的答案!!!在线等答案!!
void main{unsigned long n; uns...
c语言中unsigned short的运算
C语言scanf()返回值问题.
c语言习题 麻烦高手来做一下