C/C++
至尊玉521
我想写一手好代码
展开
-
strncpy函数使用注意
与同事互相code review的时候,同事指出我的代码在使用strcpy,建议改为strncpy,避免缓冲区溢出问题。于是不加思索改为strncpy,谁知道不小心遇到strncpy另一个问题,也可能导致缓冲区溢出。先贴上strncpy的函数原型:char *strncpy(char *dest, const char *src, size_t n)和strcpy相比多了一个参数n,意思是最多拷贝n个字节,以避免缓冲区的溢出。我的代码是这样的:char dest[8] = {0};原创 2021-09-26 12:42:03 · 716 阅读 · 0 评论 -
ulimit -c unlimited
ulimit -a 可以显示当前的各种用户进程限制。ulimit -c umlimited 在发生段错误的时候可以产生core文件。原创 2020-06-07 16:29:41 · 1250 阅读 · 1 评论 -
C语言逗号运算符优先级
在C语言中逗号运算符(,)是优先级最低的运算符。所谓的优先级是指当有许多运算符在一起的时候,谁先执行的问题。例如:1+2*3,先执行加号运算符还是先执行乘号运算符。赋值运算符(=)是优先级较低的运算符,但逗号运算符的优先级低于赋值运算符(=)。逗号运算符还有以下这些特点:从左向右执行表达式。即(i+1, i*2, i-3)这个表达式先计算最左边的i+1,然后是i*2,最后是i-3。...原创 2020-05-02 08:42:47 · 8606 阅读 · 2 评论