11智能在线
新记
C语言中的o格式字符中,假设整型变量a的值为-1,则printf("%d,%o",a,a)中后面两个a是什么意思?
另外,这个语句的输出结果是-1,177777,不是想要输出八进制数-1吗,怎么会出现后面的177777呢?谢谢各位的回答,最好详细,浅显些。
举报该文章
相关建议 2011-01-25
十进制的-1转换成二进制是1111111111111111,
而这个二进制转换成八进制是177777(假如int是2字节的)
因为程序语言中八进制和十六进制一般是用来方便我们观察一个变量的二进制位的值的,我们并不会去关心它是正值还是负值,所以输出是一个很大的数了。
printf("%d,%o",a,a)这2个a都是输出参数,第一个是以十进制输出,第二个以八进制输出,a在计算机里面存储的值不变,只是给大家呈现的方式不同而已
温馨提示:内容为网友见解,仅供参考
当前网址:
https://11.t2y.org/zz/pfm8fq477.html
其他看法
无其他回答
相似回答
大家正在搜
相关问题
int a=-1; printf("%d,%o",a,a);
C语言问题int a=-1; printf("%d,%o",...
C语言 printf相关 printf(“%o”,&stud...
c语言问题:char ch; int k; ch='a';k...
c语言请教。在下图的printf中”%d,%o”,a,a不是...
int a=65535,int b=-1,printf("%...
关于c语言格式%o问题
在c语言中,char a='A'; printf ("%d%...