ron*_*ino 5 c printf unsigned scanf format-specifiers
我已经尝试了scanf("%u",&number)
,我输入了负数,问题就在于printf("%d",number)
我得到负数.我以为这会阻止我阅读负数.是scanf("%d",&number)
和scanf("%u",&number)
真的一样吗?或者只是为了可读性.
我在做一些叫做未定义行为的事情吗?
编辑:
从维基百科我读到这个:
%u:扫描十进制无符号整数(注意,在C99标准中,输入值减号是可选的,因此如果读取减号,则不会出现错误,结果将是负数的二进制补码,可能是非常大的价值.
阅读SO答案及以上,有点令人困惑.有人能说得更清楚吗?
归档时间: |
|
查看次数: |
5436 次 |
最近记录: |