CPP-函数
函数是一组一起执行一个任务的语句。每个 C++ 程序都至少有一个函数,即主函数 main()
,所有简单的程序都可以定义其他额外的函数。
C++ 标准库提供了大量的程序可以调用的内置函数。例如,函数 strcat()
用来连接两个字符串,函数 memcpy()
用来复制内存到另一个位置。
函数是一组一起执行一个任务的语句。每个 C++ 程序都至少有一个函数,即主函数 main()
,所有简单的程序都可以定义其他额外的函数。
C++ 标准库提供了大量的程序可以调用的内置函数。例如,函数 strcat()
用来连接两个字符串,函数 memcpy()
用来复制内存到另一个位置。
break 语句 终止循环或 switch
语句,程序流将继续执行紧接着循环或 switch
的下一条语句。
continue 语句 告诉一个循环体立刻停止本次循环迭代,重新开始下次循环迭代。
1 | #include <iostream> |
.
(点)运算符和 ->
(箭头)运算符用于引用类、结构和共用体的成员。
点运算符应用于实际的对象。箭头运算符与一个指向对象的指针一起使用。
实例:
1 | struct Employee { |
(.)点运算符
下面的代码把值 zara
赋给对象 emp
的 first_name
成员:
1 | strcpy(emp.first_name, "zara"); |
(->)箭头运算符
如果 p_emp
是一个指针,指向类型为 Employee
的对象,则要把值 zara
赋给对象 p_emp
的 first_name
成员,需要编写如下代码:
1 | strcpy(p_emp->first_name, "zara"); |
sizeof
是一个关键字,它是一个编译时运算符,用于判断变量或数据类型的字节大小。
sizeof
运算符可用于获取类、结构、共用体和其他用户自定义数据类型的大小。
使用 sizeof
的语法如下:
1 | sizeof (data type) |
其中,data type
是要计算大小的数据类型,包括类、结构、共用体和其他用户自定义数据类型。
实例:
1 | #include <iostream> |
结果,结果会根据使用的机器而不同:
1 | Size of char : 1 |
存储类定义 C++ 程序中变量/函数的范围(可见性)和生命周期。这些说明符放置在它们所修饰的类型之前。
C++ 程序中可用的存储类:
从 C++ 17 开始,auto
关键字不再是 C++ 存储类说明符,且 register
关键字被弃用。
C++ 允许在 char
、int
和 double
数据类型前放置修饰符。修饰符用于改变基本类型的含义,所以它更能满足各种情境的需求。
下面列出了数据类型修饰符:
修饰符 signed
、unsigned
、long
和 short
可应用于整型,signed
和 unsigned
可应用于字符型,long
可应用于双精度型。
修饰符 signed
和 unsigned
也可以作为 long
或 short
修饰符的前缀。例如:unsigned long int
。
C++ 允许使用速记符号来声明无符号短整数或无符号长整数。可以不写 int
,只写单词 unsigned
、short
或 unsigned
、long
,int
是隐含的。
Bjarne 在他的 The C++ Programming Language
里面给出过一个助记的方法:把一个声明从右向左读。
1 | char * const cp; ( * 读成 pointer to ) |
同上因为C++
里面没有const*
的运算符,所以const
只能属于前面的类型。
C++
标准规定,const
关键字放在类型或变量名之前等价的。