1. 连接规范

1. extern “C”

2. 一部分采用C的连接规范

#ifdef __cplusplus

extern "C"

{

#endif

#ifdef __cpluscplus

}

#endif

2. 变量

1)全局变量(static或者extern)存放在程序的静态数据区中,在程序进入main()之前创建,在main()结束之后销毁。

2)函数内的static局部变量和类的static数据成员都具有static存储类型,因此被转移到程序的静态存储区,也会默认初始化0

3)自动变量在堆栈上创建,初始化时程序员的责任。

3. 基本数据类型和内存映像

1)大端法:一般网络字节顺序,高字在低地址端

2)小端法:内存中,高子在高地址段。

3)自然对齐:基本数据类型(short int double)在内存中存储时要保证地址能被大小所整除

4. 类型转换

1)数据类型从低级向高级,从小的内存向大的内存转换

2)可以将派生类对象转换为基类对象(会发生内存截断)。

3)在C中可以将void转化为任何类型,也可以反过来,而C++不能反过来

5. 浮点数的大小比较 float double

1)设置一个比较的精度

double x;

double y;

int jingdu=1e-6;

if(abs(x-y)<=jingdu)x与y相等

if(abs(x-y)>jindu)  x与y不等

if(abs(x)<=jindu)

6. 运算符的优先级(考点)

C++,C程序设计入门——《高质量程序设计第4章》的更多相关文章

  1. 高质量程序设计指南C/C++语言——C++/C程序设计入门

    1.在C++/C中,全局变量(extern或static)存放在程序的静态数据区中,在程序进入main()之前创建,在main()结束之后销毁,因此在我们的代码中根本没有机会初始化它们,于是语言及其实 ...

  2. 高质量程序设计指南C/C++语言——C++/C程序设计入门(4)

    *switch结构的break语句只是一个“jmp”指令,其作用就是跳到switch结构的结尾处 *标准C++/C语言提供3种循环:do/while.while和for,它们都在条件表达式为TRUE( ...

  3. 高质量程序设计指南C/C++语言——C++/C程序设计入门(2)

    *标准C规定,编译器只取前31个字符作为有效的标识符,而标准C++则取前255个字符作为有效的标识符. *把具有特殊含义的字符输出到终端上,尤其是当它们出现在普通字符串或格式控制字符串中时,一般来说有 ...

  4. 高质量程序设计指南C/C++语言——C++/C程序设计入门(3)

  5. 《高质量程序设计指南:C++/C语言》面试题整理

    本试题仅用于考查C++/C程序员的基本编程技能.内容限于C++/C常用 语法,不涉及 数据结构. 算法以及深奥的语法.考试成绩能反映出考生的编程质量以及对C++/C的理解程度,但不能反映考生的智力和软 ...

  6. 高质量程序设计指南C/C++语言——malloc/free使用要点

  7. 高质量程序设计指南C/C++语言——有了malloc/free为什么还要new/delete?

  8. 高质量程序设计指南C/C++语言——内存管理

    • free()和delete只是把指针所指的内容给释放掉,并没有把指针本身删掉.指针被free()或delete以后其地址仍然不变(不等于NULL),只是该地址对应的内存是垃圾——p成了野指针.如果 ...

  9. 高质量程序设计指南C/C++语言——C++/C常量(2)

随机推荐

  1. 在colab上运行style-transfer

    1,  打开chrome浏览器,输入以下网址,打开风格转换主文件 https://colab.research.google.com/github/Hvass-Labs/TensorFlow-Tuto ...

  2. 在DLL中创建窗口时一个值得注意的地方 — UnregisterClass

    背景描述: 今天要测试一份注入代码,拿以前写的创建窗口的DLL来做测试. 第一次注入时一切正常,窗口被成功创建并显示,但在第二次加载时窗口没有显示出来. 经过研究发现在第二次加载DLL时Registe ...

  3. 2019_京东JAVA实习生招聘机试第一题

    题意抽象出来就是,求根节点的所有子节点中,以这些子节点为根的子树的最大节点数. 已有向图的方式来保存无向图,所以叶子结点i的eage[i].size()==1. import java.util.Ar ...

  4. swift Equatable 函数签名的测试

    struct Degoo:Equatable { var lex:String var pex:String static func == (left:Degoo, right:Degoo) -> ...

  5. 自己写的画loss曲线代码

    import matplotlib.pyplot as plt iteration = [] loss = [] with open('/home/sensetime/log.txt','r') as ...

  6. 【软件构造】第三章第四节 面向对象编程OOP

    第三章第四节 面向对象编程OOP 本节讲学习ADT的具体实现技术:OOP Outline OOP的基本概念 对象 类 接口 抽象类 OOP的不同特征 封装 继承与重写(override) 多态与重载( ...

  7. Ubuntu 18的网络配置

    包括Ubuntu 18.04和18.10,设置为静态IP及DNS. sudo vim /etc/netplan/50-cloud-init.yaml network: ethernets: enp4s ...

  8. 报错:org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not execute statement

    org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement; SQL [n ...

  9. 计算机网络之传输层 下(TCP)

    1. TCP的特点 特点:它是一个点到点的通信机制,只能有一个发送方和一个接收方:它提供是一个可靠的,按序的字节流机制:使用流水线机制,通过拥塞控制和流量控制的机制设置窗口尺寸:发送方和接收方都有缓存 ...

  10. Openjudge-4132-四则运算表达式求值

    这一题我们可以通过递归求解,首先我们可以把一个表达式分为三部分,分别是: (1)表达式 :项.加减 (2)项:因子.乘除 (3)因子:数.()表达式 这三项构成了递归的关系,我们可以看到,要求一个表达 ...