码迷,mamicode.com
首页 > 编程语言 > 详细

C/C++ Bug&Pitfalls

时间:2014-05-25 20:08:47      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:class   blog   c   code   a   color   

  这篇文章也是长期性的一个积累,对于本人个性化的一些使用C/C++造成的失误进行记录。

  1)Printf 中格式化使用造成的失误:

  

1
2
3
4
5
6
7
8
9
10
int
main() {
    char* str="-1234";
         
    printf("string is %lld\nstr length is %d\n", str2Number(str), strlen(str));
    //printf("string is %ld\nstr length is %d\n", str2Number(str), strlen(str));
 
    getchar();
    return 0;
}

 

   如上,str2Number返回的是long long 类型,如果使用注释掉的那一种printf的话,则后者显示为-1,尽管strlen(str)值仍为5。

  2) 在使用赋值操作,比如:

1
2
int num = 0xFFFFFFFF
int num = 0x80000001

   所赋的值都是补码,而不是源码或者反码。

C/C++ Bug&Pitfalls,布布扣,bubuko.com

C/C++ Bug&Pitfalls

标签:class   blog   c   code   a   color   

原文地址:http://www.cnblogs.com/pan89/p/3751362.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!