Linux编码常出现的错误

1.printf("\n");缓冲区未清空的情况,没有加\n

2.使用gdb时需要加-g调试信息选项

3.有时候可能需要多多个文件流,后面的文件流如果不能打开的话就需要关闭前面的文件流,所以不能简单的用ERROR_CHECK

4.注意字符串的最后一个字符是'\0'

5.对于文件的初始化memset(str, '\0', sizeof(str));如果不初始化的话会导致输出乱码。

也可以bzero(*s, size);

6.对于fork()函数的理解其实一开始是错的,因为fork实际上并不是在一开始就只执行一遍,fork真的是复制进程,会将前面的进程全部都重新执行。

7.注意检错的时候对于线程进行检错的时候,是使用errono但是对于线程进行检测的时候时使用返回值因为使用errono进行检错的时候可能不能判断这个errno是哪一个线程的。所以在头文件中是需要额外的逻辑的,进程是ERROR_CHECK,线程是THREAD_ERROR_CHECK是自己在头文件中进行定义。

相关推荐
猫豆~6 小时前
软件包管理——2day
linux·运维
大白菜13248 小时前
进程的信号
linux
XH-hui8 小时前
【打靶日记】群内靶机Secure
linux·网络安全
Shingmc38 小时前
【Linux】进程控制
linux·服务器·算法
视觉装置在笑7139 小时前
Shell 变量基础与进阶知识
linux·运维
Web极客码9 小时前
如何通过命令行工具检查 Linux 版本信息
linux·运维·服务器
Lynnxiaowen9 小时前
今天我们继续学习Kubernetes内容pod资源对象
运维·学习·容器·kubernetes·云计算
欢鸽儿9 小时前
Vitis】Linux 下彻底清除启动界面 Recent Workspaces 历史路径
linux·嵌入式硬件·fpga
繁华似锦respect10 小时前
C++ 智能指针底层实现深度解析
linux·开发语言·c++·设计模式·代理模式
远程软件小帮手10 小时前
云电脑挂机功能上线!边上班摸鱼边游戏多开教程
运维·服务器