
C/C++
zhyoulun
ha..ha..
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++编译器在编译程序时会自动定义的预处理器(类似于全局变量)
编译C++程序时编译器自动定义了一个预处理器名字__cplusplus(注意前面有两个下划线)。因此,我们可以根据它来判断该程序是否是C++程序,以便有条件地包含一些代码。 例如: #ifdef __cplusplus // 不错我们要编译C++ /*在这里写我们想要做的事情*/ #endif 在编译标准C 时,编译器将自动定义名字__STDC__ 。当然__cplu原创 2013-11-10 21:49:41 · 1456 阅读 · 0 评论 -
通用预处理器宏assert()的用法
assert()是C语言标准库中提供的一个通用预处理器宏。在代码中常利用assert()来判断一个必需的前提条件,以便程序能够正确执行。例如,假定我们要读入一个文本文件,并对其中的词进行排序,必需的前提条件是文件名已经提供给我们了,这样我们才能打开这个文件。为了使用assert(),必须包含与之相关联的头文件: #include 下面是一个简单的使用示例: assert( file原创 2013-11-10 22:01:13 · 1823 阅读 · 0 评论 -
C++文件操作的HelloWorld
下面是一个C++文件操作的入门,可以很容易的参照模仿。 #include #include #include using namespace std; void main(void) { //输出文件 ofstream outfile("out.txt"); //输入文件 ifstream infile("in.txt"); //判断是否能打开输入文件 if(!infile)原创 2013-11-11 19:11:23 · 1073 阅读 · 0 评论 -
如何分配动态数组
如何分配动态数组,以及内存的回收,还有与其他情况的对比。 #include using namespace std; void main(void) { cout<<"----------------------"<<endl; cout<<"静态对象"<<endl; //静态对象 int a; a=1; cout<<"a:"<<a<<endl; cout<<"------原创 2013-11-11 19:53:55 · 941 阅读 · 0 评论 -
fork创建子进程
流程子进程被Linux内核调入CPU执行的过程进程的生命周期包括从创建到退出的全部状态转化,它的生成周期里并不一定要经历所有的状态。最初,父进程通过fork系统调用创建子进程,子进程被创建后,处于创建状态。Linux内核为子进程配置数据结构,如果内存空间足够,子进程在内核中就绪,否则在swap分区就绪。这时子进程处于就绪状态,等待Linux内核调度。Linux内核会为子进程分配CPU时钟周期,在合适原创 2016-11-08 13:38:31 · 7301 阅读 · 0 评论 -
传递数组到函数中
正文为将数组类型和元素数量告诉数组处理函数,请通过两个不同的参数来传递他们:void fillArray(int arr[], int size); //原型而不要试图使用方括号表示法来传递数组长度:void fillArray(int arr[size]); //不正确解释在大多数情况下,C++和C语言一样,也将数组名视为指针。C++将数组名解释为其第一个元素的地址:cookies ==原创 2017-02-06 14:19:26 · 2914 阅读 · 0 评论