C++ 的标准输入输出头文件 input output stream
cout 类似于 printf, 作用是往屏幕打印数据
区别:
cout 是个变量 printf 是个函数
<< :
左移操作符 和 cout 结合后功能变了,可以理解为数据流向:数据从右边流向左边
右边是 字符串 左边是屏幕 ==> 字符串 --> 屏幕
endl 是一个换行
C中的转义字符在C++同样可以使用
cout 支持链式操作,数据流遵循先来后到的原则
cout 可以自动识别变基础量类型
标准输入: cin
cout << "请输入一个整数:";
cin >> a; // scanf ("%d", &a);
cout << a << endl;
// 注意:cin cout 必须放到一行的最左边
函数返回值为引用:
不能返回局部变量的引用,可以返回静态变量或者全局变量的引用
// 1、不接受返回值
func();
// 2、使用普通变量接受函数返回值,接受到的变量的值
int a = func();
cout << "a = " << a << endl;
a = 50;
func();
// 3、使用引用接受返回值,接受到的是 空间(引用)
int &a2 = func();
a2 = 100;
func();
// 4、函数如果返回的是一个引用,则可以作为左值使用
func() = 200;
func();
return 0;
2、指针引用
struct Student{int id;};
void func(Student **ps)
{
*ps = (Student *)malloc(sizeof(Student)/sizeof(char));
(*ps)->id = 20;
}
void func(Student* &ps)
{
ps = (Student *)malloc(sizeof(Student)/sizeof(char));
ps->id = 20;
}
int main2()
{
Student *ps = NULL;
// func(&ps);
func(ps);
printf ("id = %d\n", ps->id);
return 0;
}
常引用
-
引用普通变量
-
引用常量
引用常量的时候,编译会为常量 20 分配空间, rb 是这个空间的引用
const int &rb = 20;