- c语言中,变量最好进行初始化,特别是字符串最好注意,未初始化时,内存里为cc ,如果按fwrite()方式写进文件,会出现“烫烫“,造成乱码,初始为0就可以避免。
- 前置版本返回一个引用【classname & operator++()】,
后置版本返回一个const值【const classname operator ++(int)】。
后置版本是利用前置版本来实现的。节约代码,控制代码有余。
前置版本的效率高,因为后置版本需要调用前置版本,所有后置版本效率比前置要低。(++i比i++效率高。)
在后置版本里,人为添加一个参数(int),称为哑元,主要是为了区别前置版本,这个参数不会被使用。
记住,如果有哑元,则是postfix,否则,就是prefix
就像其他的一元算法和逻辑运算一样
而其实在C++中用到这种哑元的也只有在postfix ++ 和–了
【该点转自 Yerasel】 - linux下 不论是阻塞还是非阻塞方式的socket,read() = 0 时,都表示连接正常退出,返回值<0 表示出错,>0 表示正常读取到数据。
- 写文件最好用二进制的方式,fputs可能会添加回车换行符
写文件注意缓存清空
char STR[] = “this is a string”;
sizeof(STR) 比strlen(STR) 大一个字节; - java与C不一样,java中new对象数组时,只是分配了一个指针而已,并没有为每个对象分配内存;
- c++中,拷贝构造函数里,能够访问private变量,c++是可以这样访问的,可以理解为“在成员函数中,能够访问private变量”, 这两点都满足,例子:(m_error_code 为private变量)
CResponse::CResponse(const CResponse& response) {
m_error_code = response.m_error_code;
}
Coding
C语言与C++编程技巧
最新推荐文章于 2025-08-01 15:25:06 发布
本文探讨了C语言中变量初始化的重要性,特别是在处理字符串时。同时介绍了C++中前置和后置递增操作的区别及其实现原理。还讨论了Linux下socket编程的注意事项、文件写入的最佳实践以及C++中拷贝构造函数的特性。
1358

被折叠的 条评论
为什么被折叠?



