排序
数组和指针的区别深入剖析
在C/C++中,指针和数组在很多地方可以互换使用,这使得我们产生一种错觉,感觉数组和指针两者是完全等价的,事实上数组和指针是有很大的区别的。 1.两者在含义上的区别。 数组对应着一块内存区...
C++多字节字符与宽字节字符相互转换
最近在C++编程中经常遇到需要多字节字符与宽字节字符相互转换的问题,一直自己贴那几句代码。觉得麻烦,于是就自己写了一个类来封装wchar_t与char类型间的转换,其他的,诸如:CString LPWSTRTC...
C语言中不可不知的三种缓冲类型
为什么有时候写入文件的内容却没有?没什么printf打印在终端的内容看不到?这一切背后有着怎样早为人知的秘密?今天来说说缓冲的事。也许你已经听说过三种缓冲模式,但是今天要讲的不止这些。 缓冲...
C语言宏定义使用分析
1、如何区分宏定义中的“宏名称”和“宏字符串”?对于带参数的宏又该注意什么? 在宏定义中,“宏名称”和“宏字符串”是通过“空格”来区分的。编译器在处理时宏定义时,首先从“#define”后...
关于C/C++中typedef的定义与用法总结
在C还是C++代码中,typedef都使用的很多,在C代码中尤其是多。typedef与#define有些相似,其实是不同的,特别是在一些复杂的用法上,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的...
c++ std::invalid_argument应用
首先说明invalid_argument是一个类(class invalid_argument;),它的继承关系如下 exception-------->logic_error--------->invalid_argument invalid_argument原型是 class invalid_arg...
成员初始化列表与构造函数体中的区别详细解析
无论是在构造函数初始化列表中初始化成员,还是在构造函数体中对它们赋值,最终结果是相同的。不同之处在于,使用构造函数初始化列表的版本初始化数据成员,没有定义初始化列表的构造函数版本在...
如何使用VC库函数中的快速排序函数
函数原型: void qsort(void *base,size_t num,size_t width, int (__cdecl *compare )(const void *, const void *) ); 第一个是数组地址,第二是数组大小,第三个是数组中每个元素的字节数,...
c字符串,string对象,字符串字面值的区别详解
一、字符串字面值 字符串字面值是一串常量字符,字符串字面值常量用双引号括起来的零个或多个字符表示,为兼容C语言,C++中所有的字符串字面值都由编译器自动在末尾添加一个空字符。 字符串没有...
学习C语言要掌握的几个库 附代码实例
C语言有许多常用的库,学习C语言需要掌握的几个重要库及示例代码如下: 1. stdio.h:标准输入输出库,提供打印输出函数如printf()、scanf()等。示例代码: #include <stdio.h> int main() { pr...








