c程序问题
c 程序中,%d是表示十进制,%c是表示字符,我想问二进制是怎么表示的?还有如果想让它输出内存中是以什么形式处理的该怎么表示?
参考答案:不同系统有所不同,一般都是这样表示的:
字符:
0000 0001 = 1
0111 1111 = 127
数字:
1111 1111 1111 1111 1111 1111 1111 1111 = -1
1111 1111 1111 1111 1111 1111 1111 1110 = -2
.............
.............
0000 0000 0000 0000 0000 0000 0000 0010 = 2
0000 0000 0000 0000 0000 0000 0000 0001 = 1
0000 0000 0000 0000 0000 0000 0000 0000 = 0
要输出相应的二进制,自己编一个转换程序
不想编的话,可以在程序中设置断点, 在watch中就可以查看了(VC).
补充:小数点在内存中不占位置的,按照类似上面的形式分别记录整数部分和小数部分,其中小数部分的二进制表示有时候只是近似值.
如:3.1,实际内存中可能记录的是:3.10001
断点:VC6中是选择想在设置断点处那行程序,然后按一个手型的图标
VC8(2005),是直接左边点以下就出现一个红点.
然后按debug就行了.