C 没有关键字可以申请堆内存,只提供了一些库函数如malloc、calloc、realloc等。而C++提供了一个一系列新的关键字来处理堆内存,那就是new和delete,下面示例代码分别编写了C和C++各种申请内存的方式。继续阅读

在C中,我们只了解到有两种传参方式,一种是值传递,另外一种是传递指针,一般情况下我们选择使用指针传递参数。在C++中,又新增了一种传参方式,那就是引用(type &),引用传参给我们带来了更好的体验。那三者的具体区别在哪里呢?继续阅读

在 C 语言中, extern 关键字具有外延性,使修饰的变量作用域可以拓展到其他文件中。而在C++中,extren被重载后有了其他功能,就是修饰函数以什么方式进行编译。决定了在编译过程中是否对函数进行倾轧(Name Mangling)操作,也是在今天才知道倾轧这个词语。继续阅读

C语言与C++变量声明时有一些差异,比如枚举、结构、联合等数据结构在C语言声明新的变量,都需要带对应的关键字,如 struct stu name,而C++则简化了变量的声明。可以直接使用数据类型的名字直接定义变量,如stu name。具体可看下面的例子。继续阅读

atoi这个库函数实在的太强大了,很多细节上的处理是我们无法想象的,不过最近也尝试做了一下这个练习,发现真的不是那么简单,只实现了一部分功能。如将字符串”123″转换为123,”-0123″转换为-123。代码功能比较简陋,还有诸多没有实现的功能,相比库函数atoi还差的很多,仅供参考。继续阅读

1、传入一个n 在堆空间中产生n*n方格的棋盘
int ** createBoard(int n);
int createBoard1(int ***p,int n);
2、N颗棋子随机落在棋盘上<需要防止落在同一位置>
int initBoard(int **p,int n);
3、打印棋盘
int printBoard(int **p,int n);
如果有两颗棋子落同一行或者同一列则输出好棋,否则输出不是好棋。
将棋局中的棋子打印出来空位用O,有旗子的用X表示。随意就行。
4、销毁棋盘
int destroyBoard(int **p,int n);
int destroyBoard1(int ***p,int n);继续阅读