一、bool型
- bool 类型是 C++ 语言基本数据结构之一,bool 类型取值范围仅有两个值:true 和 false。在做逻辑运算时,默认非零即为 ture。
bool flag = true;
二、命名空间(Namespace)
不同的人开发同一个系统,命名可能会发生冲突,就可以用命名空间来定义变量,互不影响,使用方法:
namespace Li{ //小李的变量声明
int flag = 1;
}
namespace Han{ //小韩的变量声明
bool flag = true;
}
这样定义变量,在调用的时候有多种调用方法:
1.域解析操作符(::),前面是命名空间,后面是变量
Li::flag = 0; //使用小李定义的变量flag
Han::flag = false; //使用小韩定义的变量flag
2.using申明,后面使用变量时,在没给出命名空间时,默认的是using后给出命名空间的变量
using Li::flag;
flag = 0; //使用小李定义的变量flag
Han::flag = false; //使用小韩定义的变量fla
3.using不但可以对单个变量,还可以对整个命名空间,这样,后面没给出命名空间的时候,默认的都是using后面的命名空间
using namespace Li;
flag = 0; //使用小李定义的变量flag
Han::flag = false; //使用小韩定义的变量flag
三、C++的输入输出
- 因为C++兼容C,所以C的printf()和scanf()依然可以使用,但是C++又从新给出了新的方式输入和输出,如cin(标准输入),cout(标准输出),cerr(标准错误),都包含在标准库(<iostream>)当中,其本质也是函数的调用。
#include<iostream>
using namespace std;
int main()
{
int x;
float y;
cout<<"Please input an int number:"<<endl;//endl表示换行输出
cin>>x;
cout<<"The int number is x= "<<x<<endl;
cout<<"Please input a float number:"<<endl;
cin>>y;
cout<<"The float number is y= "<<y<<endl;
return 0;
}
- 上面可以看出来cout有连续输出的功能,同样,cin也有连续输入的能力,数据之间用空格隔开
#include<iostream>
using namespace std;
int main()
{
int x;
float y;
cout<<"Please input an int number and a float number:"<<endl;
cin>>x>>y;
cout<<"The int number is x= "<<x<<endl;
cout<<"The float number is y= "<<y<<endl;
return 0;
}
- 在C语言中,我们使用
while(scanf("%d",&a) != EOF)
来达到连续输入,但是C++也给出了用cin来达到连续输入,因为cin在有输入的时候返回1,无输入的时候返回0,使用:
while(cin>>a)
四、C++的引用
C++的引用类似于C语言的指针,只是在申明的时候,使用了&来代替*
int a = 10;
int &b = a;
cout<<a<<" "<<b<<endl;
cout<<&a<<" "<<&b<<endl;
这个将输出
10 10
0018FDB4 0018FDB4
下面一个例子:
#include<iostream>
using namespace std;
void swap(int &a, int &b);
int main()
{
int num1 = 10;
int num2 = 20;
cout<<num1<<" "<<num2<<endl;
swap(num1, num2);
cout<<num1<<" "<<num2<<endl;
return 0;
}
void swap(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
}