C/C++
文章平均质量分 87
蓝月心语
E-mail:liao20081228@126.com
展开
-
C/C++中的参数传递方式
1 传值 C/C++默认的采用传值,即在函数被调用的时候,给形参申请一个空间,再将实参的值传递给形参,对形参的任何改变不会影响实参数的值:#include<iostream>using namespace std;#define ok 0int add(int x){ cout << &原创 2016-10-12 02:26:12 · 919 阅读 · 0 评论 -
C/C++中的隐式转化
1算术转换a[char,short,bool,usinged char,unsiged short]-->|运算数为以上整型时必须转换为int|b[int]b-->c[unsigned int]c-->d[long]d-->e[unsigned long] e-->原创 2018-05-18 23:52:04 · 275 阅读 · 0 评论 -
C/C++基本数据类型大小
1 VC_64位 数据类型 大小 _Bool或bool 1B char 1B signed char 1B unsigned char 1B short=short int=signed short=signed short int 2B unsigned short=unsigned short int 2...原创 2018-05-18 22:39:33 · 457 阅读 · 0 评论 -
C++单元测试工具——doctest
1 项目地址 https://github.com/onqtam/doctest2 特点和设计目标doctest从一开始就被设计为尽可能轻量级和透明。这些主要特点应该保留下来。2.1 透明通过定义DOCTEST_CONFIG_DISABLE标识符可以从二进制执行文件中删除与测试相关的所有内容非常小巧易于集成 - 只是一个头文件非常低的编译时间- 大约25ms的编译时间开销,用于展开头文件可原创 2017-08-09 14:07:12 · 13068 阅读 · 0 评论 -
API文档生成工具——Doxygen
1 简介 为代码写注释一直是大多数程序员有些困扰的事情。更头痛的是写文档,以及维护文档的问题,而doxygen就能把遵守某种格式的注释自动转化为对应的文档。 Doxygen是基于GPL的开源项目,是一个非常优秀的文档系统,当前支持在大多数unix(包括linux),windows家族,Mac系统上运行,完全支持C++, C, Java, IDL(Corba和Microsoft 家族...转载 2017-08-17 12:45:30 · 6941 阅读 · 1 评论 -
pragma 预处理指令详解
在所有的预处理指令中,#pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。 #pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。 依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 其格式一般为: #pragma parameter 3.1 pr原创 2017-12-09 15:27:53 · 260 阅读 · 0 评论 -
避免头文件重复引入和重复定义
1 将声明和实现分开 在*.c文件中实现,在*.h 中声明。包括函数,自定义数据结构等。如:*.c#include"*.h" //头文件应全部在对应的*.h中引入,`*.c`文件只需引入对应的`*.h`文件即可int c[10]={0};int Add(int a, int b){ return a+b;}*.h#pragma...原创 2017-08-18 11:32:48 · 16553 阅读 · 1 评论 -
C/C++的main函数
长期存储信息的三个要求: (1)能够存放大量的信息。 (2)进程终止后,信息不会丢失。 (3)多进程可并发的访问。 文件是进程创建的信息逻辑单元,是对磁盘的抽象。(进程是对CPU的抽象,地址空间是对内存的抽象)1 文件 文件命名:不同系统不同规则。Unix区分大小写,DOS不区分大小写。文件名包括基本名、“.”、扩展名。Unix中扩展名只是一种...原创 2017-11-21 22:45:01 · 706 阅读 · 0 评论