目录
指针
基本的输入输出
1、标准输出流(cout)
2、标准输入流(cin)
3、标准错误流(cerr)
4、标准日志流(clog)
使用指针时常用的操作:
(1)定义一个指针变量
(2)把变量地址赋值给指针
(3)访问指针变量中可用地址的值
P.s.:通过使用一元运算符*来返回位于操作数所指定地址的变量的值
#include
using namespace std;
int main ()
{
int var = 20; // 实际变量的声明
int *ip; // (1)指针变量的声明
ip = &var; // (2)把变量地址赋值给指针
cout << "Value of var variable: ";
cout << var << endl;
// 输出在指针变量中存储的地址
cout << "Address stored in ip variable: ";
cout << ip << endl;
cout << "Value of *ip variable: ";
cout << *ip << endl; // (3)访问指针变量中可用地址的值
return 0;
}
输出:
Value of var variable: 20
Address stored in ip variable: 0xbfc601ac
Value of *ip variable: 20
(1)cout 是与流插入运算符 << 结合使用的;
(2)<< 运算符被重载来输出内置类型的数据项;
(3)<< 在一个语句中可以多次使用。
(1)cin 是与流提取符 >> 结合使用的;
(2)>> 在一个语句中可以多次使用,如果要求输入多个数据:
以下两段代码等价:
cin >> name >> age;
cin >> name;
cin >> age;
----------关于输入输出的示例--------
#include
using namespace std;
int main( )
{
char name[50];
cout << "请输入您的名称: "; // 输出
cin >> name; // 输入
cout << "您的名称是: " << name << endl; // 输出
}
输出:
请输入您的名称: cplusplus
您的名称是: cplusplus
cerr 对象是非缓冲的,且每个流插入到 cerr 都会立即输出。
#include
using namespace std;
int main( )
{
char str[] = "Unable to read....";
cerr << "Error message : " << str << endl;
}
输出:
Error message : Unable to read....
clog 对象是缓冲的。这意味着每个流插入到 clog 都会先存储在缓冲区,直到缓冲填满或者缓冲区刷新时才会输出。
#include
using namespace std;
int main( )
{
char str[] = "Unable to read....";
clog << "Error message : " << str << endl;
}
输出:
Error message : Unable to read....
P.s.:良好的编程实践:使用 cerr 流来显示错误消息,而其他的日志消息则使用 clog 流来输出。
参考资料:
https://www.runoob.com/cplusplus/cpp-tutorial.html