首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C 语言 int i = '11'; i 为何是 12593

2012-10-17 
C 语言 int i 11 i 为什么是 12593C/C++ codeint _tmain(int argc, _TCHAR* argv[]){int i 11pr

C 语言 int i = '11'; i 为什么是 12593

C/C++ code
int _tmain(int argc, _TCHAR* argv[]){    int i = '11';    printf("%d\n", i);}


[解决办法]
'11'是字符串,ascii码值为0x3131,就是十进制的12593
[解决办法]
6: int i = '11';
00401048 C7 45 FC 31 31 00 00 mov dword ptr [ebp-4],3131h

i的补码变成了0x3131;
按照%d格式输出自然是12593
[解决办法]
探讨
'11'是字符串,ascii码值为0x3131,就是十进制的12593

热点排行