22数据类型和基本输入输出 字符串常量 字符串常量是一对双引号括起来的字符序列。可以包含空格、转义序列符或 其他字符。由于双引号是字符串的分界符,因此如果需要在字符串中出现双 引号则必须用“)”表示。例如: “ Please press F1)” to help! 这个字符串被解释为: Please press "F1" to help 字符串常量必须在同一行书写,若一行写不下,则需要用“来连接,不要 将字符常量和字符串常量混淆不清,它们主要的区别如下 (1)字符常量用单引号括起来,占一个字节;字符串常量是用双引号括起来, 至少占用两个字节。例如“a是字符常量,占有的一个字节用来存放字符a 的 ASCIA码值,而“a”是字符串常量,它的长度不是1而是2,除了字符a之外, 它的末尾还有个“\0字符。每个字符串的末尾都有一个这样的字符 (2)字符常量实际上是整型常量的特殊形式,它可以参与常用的算术运算;而 字符串常量则不能。例如: intb=a3+3;//结果b为100,这是因为将‘a的ASCI码值97参与运算
2.2数据类型和基本输入输出 ➢ 字符串常量 字符串常量是一对双引号括起来的字符序列。可以包含空格、转义序列符或 其他字符。由于双引号是字符串的分界符,因此如果需要在字符串中出现双 引号则必须用“\””表示。例如: “Please press \”F1\” to help!” 这个字符串被解释为: Please press “F1” to help! 字符串常量必须在同一行书写,若一行写不下,则需要用‘\’来连接,不要 将字符常量和字符串常量混淆不清,它们主要的区别如下: (1) 字符常量用单引号括起来,占一个字节;字符串常量是用双引号括起来, 至少占用两个字节。例如‘ a’是字符常量,占有的一个字节用来存放字符a 的ASCII码值,而“ a”是字符串常量,它的长度不是1而是2,除了字符a之外, 它的末尾还有个‘\0’字符。每个字符串的末尾都有一个这样的字符。 (2) 字符常量实际上是整型常量的特殊形式,它可以参与常用的算术运算;而 字符串常量则不能。例如: int b= ‘a’+3;// 结果b为100,这是因为将‘ a’的ASCII码值97参与运算
22数据类型和基本输入输出 >符号常量 [例ExPI1]用# define定义符号常量。 #include iostream. h> #define PI 3.14159 void maino i double r=100.0, area area=Pi **r. cout<<"圆的面积是:"<area<<"n [例Ex_PI2]用 const定义的变量代替符号常量 #include iostream. h) const double pi= 3. 14159 VOI d main double r=100.0. area area PI *k r* r: cout<<"圆的面积是:"<<area<"n
2.2数据类型和基本输入输出 ➢ 符号常量 [例Ex_PI1] 用#define定义符号常量。 #include <iostream.h> #define PI 3.14159 void main() { double r = 100.0, area; area = PI * r * r; cout<<"圆的面积是:"<<area<< "\n"; } [例Ex_PI2] 用const定义的变量代替符号常量。 #include <iostream.h> const double PI = 3.14159; void main() { double r = 100.0, area; area = PI * r * r; cout<<"圆的面积是:"<<area<< "\n"; }
22数据类型和基本输入输出 2.23变量 变量的定义 定义变量是用下面的格式语句进行定义的:<类型><变量名表> 需要说明的是: (1)在同一个程序块中,不能有两个相同的变量名。 (2)没有字符串变量类型,字符串是用字符类型的数组或指针来定义的。 (3)与其他语言相比,C++变量的定义比较自由 变量的初始化 程序中常需要对一些变量预先设置初值,这一过程称为初始化。可以在定义 变量时同时使变量初始化,也可以在多个变量的定义语句中单独对某个变量 初始化 需要注意的是,一个未初始化的变量不是没有数值,而是取决于变量在系统 中的存储形式,它可能是系统的缺省值或无效值
2.2数据类型和基本输入输出 2.2.3变量 ➢ 变量的定义 定义变量是用下面的格式语句进行定义的:<类型> <变量名表>; 需要说明的是: (1) 在同一个程序块中,不能有两个相同的变量名。 (2) 没有字符串变量类型,字符串是用字符类型的数组或指针来定义的。 (3) 与其他语言相比,C++变量的定义比较自由。 ➢ 变量的初始化 程序中常需要对一些变量预先设置初值,这一过程称为初始化。可以在定义 变量时同时使变量初始化,也可以在多个变量的定义语句中单独对某个变量 初始化。 需要注意的是,一个未初始化的变量不是没有数值,而是取决于变量在系统 中的存储形式,它可能是系统的缺省值或无效值
22数据类型和基本输入输出 2.24基本输入输出 输出流(cout) 通过cou可以输出一个整数、实数、字符及字符串,cout中的插入符“<< 可以连续写多个,每个后面可以跟一个要输出的常量、变量、转义序列符、 对象以及表达式等 为了更好地调整输出格式,有时还可以使用下面的输出函数。 (1) width0函数: width(函数有两种格式 int width int width(int) (2) precision0函数: precision0也有两种格式: int precision O int precision (int) (3)fi1l0函数:fill函数也有两种格式 char f1 i110; char fill(char)
2.2数据类型和基本输入输出 2.2.4基本输入输出 ➢ 输出流(cout) 通过cout可以输出一个整数、实数、字符及字符串,cout中的插入符“<<” 可以连续写多个,每个后面可以跟一个要输出的常量、变量、转义序列符、 对象以及表达式等。 为了更好地调整输出格式,有时还可以使用下面的输出函数。 (1) width()函数:width()函数有两种格式: int width(); int width(int); (2) precision()函数:precision()也有两种格式: int precision(); int precision(int); (3) fill()函数:fill()函数也有两种格式: char fill(); char fill(char);
22数据类型和基本输入输出 [例 Ex CoutFrm]cout的格式输出 #include iostream. h> void main o int n Num=1234 double fNum=12.3456789 cout<<"1234567890<<endl; cout width(10) cout<<nNum<<Ⅶn cout width(10) cout<<fNum<endl cout<<cout. precision (4)<<endl cout<<fNum<<end l cout. fill(#') cout. width(10) cout<<fNumsendl 执行该程序,结果如下 1234567890 1234 12.3457 6 #####12.35
2.2数据类型和基本输入输出 [例Ex_CoutFrm] cout的格式输出。 #include <iostream.h> void main() { int nNum = 1234; double fNum = 12.3456789; cout<<"1234567890"<<endl; cout.width(10); cout<<nNum<<'\n'; cout.width(10); cout<<fNum<<endl; cout<<cout.precision(4)<<endl; cout<<fNum<<endl; cout.fill('#'); cout.width(10); cout<<fNum<<endl; } 执行该程序,结果如下: 1 2 3 4 5 6 7 8 9 0 1 2 3 4 1 2 . 3 4 5 7 6 1 2 . 3 5 # # # # # 1 2 . 3 5