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是自己在头文件中进行定义。

相关推荐
深圳恒讯几秒前
乌克兰服务器的网络延迟、机房现状与稳定性情况
运维·服务器·网络
星夜夏空993 分钟前
网络编程(5)—— Reactor实现(v1)
服务器·javascript·网络
Dream-Y.ocean9 分钟前
具身智能落地实战:数字人驱动的全自动化舆情监控系统
运维·自动化
拾光Ծ12 分钟前
Linux五种I/O模型与fcntl非阻塞控制
java·linux·服务器·i/o模型
半旧51817 分钟前
【Java Web02】WEB服务器内部实现技术揭秘
java·服务器·前端
张宇Joaquin27 分钟前
高性能计算之MPI——集合通信漫谈
服务器·microsoft·asp.net
梦想的旅途237 分钟前
企业微信外部群怎么实现自动化?API接口接入思路
运维·自动化·企业微信
weixin_403810131 小时前
iOS免越狱自动化蓝牙HID方案:不装代理也能跑脚本
运维·ios·自动化·跨境电商·ai智能体·ios投屏·苹果投屏
Pocker_Spades_A2 小时前
极空间安装1Panel:图形化管理Docker应用并部署AList
运维·docker·容器
二炮手亮子2 小时前
Linux命令行合集(涵盖定时任务、防火墙、SHH、线上问题实战等)
linux·运维