变量是由字母、数字、下划线组成,必须是字母或者下划线开头,不能是C++关键字,不能是一些操作符。
C++标准保留关键字如下:
asm, auto, bool, break, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast, else, enum, explicit, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch, template, this, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while
一些操作符如下:
and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq
基本数据类型:char, short int, long int, int, float, double, long double, bool, wchar_t
变量声明:数据类型 变量名,例如(int a;)。声明多个同一类型变量,数据类型 变量名1,变量名2,变量名3.……区分大小写。
(char, short, long和int)可以是有符号(signed)和无符号(unsigned)。有符号类型可以表示正数和负数,无符号类型表示正数和0。默认是有符号类型。声明时在数据类型前加上(unsigned或signed)关键字。唯一例外是字符型(char)变量。
全局变量:所有函数之外声明,可以在程序中任何地方引用。
本地变量:函数或语句块单元内声明,作用范围局限在声明它的程序范围内。
变量初始化:C++两种初始化方法,一种是声明变量时在后面加上一个等于号,并在后面跟上想要的值(例如:int a = 0;);另一种是构造函数初始化,将初始值用小括号括起来(例如:int a(0);)。
字符串:存储一个以上字符的非数字值的变量,提供string类支持,不是基本数据类型,但使用与基本类型相似,需要引用头文件<string>,并且使用using namespace 语句来使用标准名空间(std)。
"定义常量:格式是:#define identifier value
例如:
#define PI 3.14159265
#define NEWLINE '\n'
#define WIDTH 100
此方法定义的常量被称为宏量"
"声明常量:通过const前缀,定义指定类型常量,像定义变量一样。
例如:
const int width = 100;
const char tab = '\t';
const zip = 12440;
没有指定类型,默认是整形int。"
"运算符:
赋值运算符(=);
数学运算符加减乘除取模(+,-,*,/,%);
组合运算符(+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=);a -= 5; 等同于 a = a - 5;其它运算符以此类推。
递增递减(++,--);
关系运算符(==,!=,>,<,>=,<=);
逻辑运算符(!,&&,||);
条件运算符(?);格式:condition ? result1 : result2 (条件 ? 返回值1 : 返回值2)
逗号运算符(,);用来分开多个表达式,只取最右边表达式的返回值。例如:a = (b = 3, b + 2);最后a变量的值为5。
位运算符(&,|,^,~,<<,>>);逻辑与(&),逻辑或(|),逻辑异或(^),对1取补(位反转(~)),左移(<<),右移(>>)。
变量类型转换运算符;
一种是在原转换的表达式前面加用括号()括起的新数据类型;
第二种是在要转换的表达式前加变量类型并将表达式括在括号中;
sizefo()这个运算符输入参数,该参数可以是一个变量类型或者一个变量自己,返回该变量类型或对象所占的字节数;
实际应用中要注意运算符的优先顺序。"
控制台交互:
输出流count与重载运算符<<一起使用。
cout << "Output sentence"; // 打印Output sentence到屏幕上
cout << 120; // 打印数字 120 到屏幕上
cout << x; // 打印变量 x 的值到屏幕上
带("")和不带是不同的。
<<有时候被叫做插入运算符,可以在同一语句多次使用:
cout << "Hello, " << "I am " << "a C++ sentence"; //输出Hello, I am a C++ sentence
输出语句如果希望换行,需要加上\n:
cout << "First sentence.\n ";
cout << "Second sentence.\nThird sentence.";
也可以用endl换行:
cout << "First sentence." << endl;
cout << "Second sentence." << endl;
输入(cin):
C++中的标准输入是通过在cin数据流上重载运算符>>来实现的,它后面必须跟一个变量以便存储读入的数据,例如:
int age;
cin >> age;
输入一个整型变量age然后等用户从键盘输入到cin并将输入值存储在这个变量中。
cin只能在键盘输入回车键后才能处理前面输入的内容。输入的必须符合变量类型。
可以要求用户输入多个数据,例如:
cin >> a >> b;
cin和字符串:cin只能读取一个单词,一旦碰到任何空格读取就会停止,我们可以使用getline,例如:
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string mystr;
cout << "What's your name? ";
getline (cin, mystr);
cout << "Hello " << mystr << ".\n";
cout << "What is your favorite color? ";
getline (cin, mystr);
cout << "I like " << mystr << " too!\n";
return 0;
}
结果:
What's your name? Aqua
Hello Aqua.
What is your favorite color? blue
I like blue too!
字符串流:标准头文件<sstream>,例子:
// 字符串流的使用示例
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main ()
{
string mystr;
float price=0;
int quantity=0;
cout << "Enter price: ";
getline (cin,mystr);
stringstream(mystr) >> price;
cout << "Enter quantity: ";
getline (cin,mystr);
stringstream(mystr) >> quantity;
cout << "Total price: " << price*quantity << endl;
return 0;
}
输出结果:
Enter price: 22.25
Enter quantity: 7
Total price: 155.75
慢慢体会这个例子。
C++标准保留关键字如下:
asm, auto, bool, break, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast, else, enum, explicit, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch, template, this, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while
一些操作符如下:
and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq
基本数据类型:char, short int, long int, int, float, double, long double, bool, wchar_t
变量声明:数据类型 变量名,例如(int a;)。声明多个同一类型变量,数据类型 变量名1,变量名2,变量名3.……区分大小写。
(char, short, long和int)可以是有符号(signed)和无符号(unsigned)。有符号类型可以表示正数和负数,无符号类型表示正数和0。默认是有符号类型。声明时在数据类型前加上(unsigned或signed)关键字。唯一例外是字符型(char)变量。
全局变量:所有函数之外声明,可以在程序中任何地方引用。
本地变量:函数或语句块单元内声明,作用范围局限在声明它的程序范围内。
变量初始化:C++两种初始化方法,一种是声明变量时在后面加上一个等于号,并在后面跟上想要的值(例如:int a = 0;);另一种是构造函数初始化,将初始值用小括号括起来(例如:int a(0);)。
字符串:存储一个以上字符的非数字值的变量,提供string类支持,不是基本数据类型,但使用与基本类型相似,需要引用头文件<string>,并且使用using namespace 语句来使用标准名空间(std)。
"定义常量:格式是:#define identifier value
例如:
#define PI 3.14159265
#define NEWLINE '\n'
#define WIDTH 100
此方法定义的常量被称为宏量"
"声明常量:通过const前缀,定义指定类型常量,像定义变量一样。
例如:
const int width = 100;
const char tab = '\t';
const zip = 12440;
没有指定类型,默认是整形int。"
"运算符:
赋值运算符(=);
数学运算符加减乘除取模(+,-,*,/,%);
组合运算符(+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=);a -= 5; 等同于 a = a - 5;其它运算符以此类推。
递增递减(++,--);
关系运算符(==,!=,>,<,>=,<=);
逻辑运算符(!,&&,||);
条件运算符(?);格式:condition ? result1 : result2 (条件 ? 返回值1 : 返回值2)
逗号运算符(,);用来分开多个表达式,只取最右边表达式的返回值。例如:a = (b = 3, b + 2);最后a变量的值为5。
位运算符(&,|,^,~,<<,>>);逻辑与(&),逻辑或(|),逻辑异或(^),对1取补(位反转(~)),左移(<<),右移(>>)。
变量类型转换运算符;
一种是在原转换的表达式前面加用括号()括起的新数据类型;
第二种是在要转换的表达式前加变量类型并将表达式括在括号中;
sizefo()这个运算符输入参数,该参数可以是一个变量类型或者一个变量自己,返回该变量类型或对象所占的字节数;
实际应用中要注意运算符的优先顺序。"
控制台交互:
输出流count与重载运算符<<一起使用。
cout << "Output sentence"; // 打印Output sentence到屏幕上
cout << 120; // 打印数字 120 到屏幕上
cout << x; // 打印变量 x 的值到屏幕上
带("")和不带是不同的。
<<有时候被叫做插入运算符,可以在同一语句多次使用:
cout << "Hello, " << "I am " << "a C++ sentence"; //输出Hello, I am a C++ sentence
输出语句如果希望换行,需要加上\n:
cout << "First sentence.\n ";
cout << "Second sentence.\nThird sentence.";
也可以用endl换行:
cout << "First sentence." << endl;
cout << "Second sentence." << endl;
输入(cin):
C++中的标准输入是通过在cin数据流上重载运算符>>来实现的,它后面必须跟一个变量以便存储读入的数据,例如:
int age;
cin >> age;
输入一个整型变量age然后等用户从键盘输入到cin并将输入值存储在这个变量中。
cin只能在键盘输入回车键后才能处理前面输入的内容。输入的必须符合变量类型。
可以要求用户输入多个数据,例如:
cin >> a >> b;
cin和字符串:cin只能读取一个单词,一旦碰到任何空格读取就会停止,我们可以使用getline,例如:
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string mystr;
cout << "What's your name? ";
getline (cin, mystr);
cout << "Hello " << mystr << ".\n";
cout << "What is your favorite color? ";
getline (cin, mystr);
cout << "I like " << mystr << " too!\n";
return 0;
}
结果:
What's your name? Aqua
Hello Aqua.
What is your favorite color? blue
I like blue too!
字符串流:标准头文件<sstream>,例子:
// 字符串流的使用示例
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main ()
{
string mystr;
float price=0;
int quantity=0;
cout << "Enter price: ";
getline (cin,mystr);
stringstream(mystr) >> price;
cout << "Enter quantity: ";
getline (cin,mystr);
stringstream(mystr) >> quantity;
cout << "Total price: " << price*quantity << endl;
return 0;
}
输出结果:
Enter price: 22.25
Enter quantity: 7
Total price: 155.75
慢慢体会这个例子。