C5515使用CCS4.2编程,定义long型变量,该变量赋值和运算都出错;例如: long i ; i=200*2 ; printf("i=%d\n",i); 运行的结果是i=0;我尝试过加法 除法运算,结果都是0;用int定义的变量可以正常,请问如何解决这个问题,谢谢
Shine:
你好,
试试把printf("i=%d\n",i);
改成
printf("i=%ld\n",i);
ccy cui:
回复 Shine:
%d改为%ld后,i=200*200;运算结果打印为:-25536,请问%ld的显示范围是多少?
ccy cui:
回复 ccy cui:
对于%ld应该能显示32位的有符号数才对的啊,但是测试只能显示16位以内的有符号数
Shine:
回复 ccy cui:
把i=200*200改成
i = 200L * 200L;