C++ 常量定义
- 使用 #define 预处理器。
#define identifier value
#define WIDTH 5 - 使用 const 关键字。(声明指定类型的常量)
const int LENGTH = 10;
C++ 存储类
static存储类
extern 存储类:用于当有两个或多个文件共享相同的全局变量或函数的时候
thread_local 存储类
C++ 函数
函数声明
int max(int num1, int num2);
函数定义
return_type function_name( parameter list ) {
body of the function
}
函数调用
C++ 数组
所有的数组都是由连续的内存位置组成。最低的地址对应第一个元素,最高的地址对应最后一个元素。
声明数组
type arrayName [ arraySize ];
double balance[10];
初始化数组
double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0};
balance[4] = 50.0;
指向数组的指针
传递数组给函数
从函数返回数组
C++ 字符串
声明和初始化创建了一个 "Hello" 字符串。由于在数组的末尾存储了空字符,所以字符数组的大小比单词 "Hello" 的字符数多一个。在c++中,字符串是以null字符' '终止的一维数组。
char greeting[6] = {'H', 'e', 'l', 'l', 'o', ' '};
C++ 指针
指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。
声明指针变量 : type *var-name;
int *ip; /* 一个整型的指针 */
double *dp; /* 一个 double 型的指针 */
int var = 20; // 实际变量的声明
int *ip; // 指针变量的声明
ip = &var; // 在指针变量中存储 var 的地址
值为:var=20; *ip=20; ip=0xbfc601ac
c++Null指针
c++指针的算术运算
c++指针vs数组
c++指向指针的指针
c++传递指针给函数
c++从函数返回指针
C++ 引用
引用很容易与指针混淆,它们之间有三个主要的不同:
- 不存在空引用。引用必须连接到一块合法的内存。
- 一旦引用被初始化为一个对象,就不能被指向到另一个对象。指针可以在任何时候指向到另一个对象。
- 引用必须在创建时被初始化。指针可以在任何时间被初始化。
c++中创建引用(&为引用符)
可以把引用当成是变量附属在内存位置中的第二个标签。因此,您可以通过原始变量名称或引用来访问变量的内容。
int i = 17;
int& r = i ;
把引用作为参数
把引用作为返回值