#include<stdio.h> //stdin;stdout; stderr
#include<iostream> //cin;cinout;cerr;clog
using namespace std;
1、c语言中,当前述变量类型改变时,必须改变scanf的格式控制符
int main()
{
int a;
char ch;
scanf("%d %c", &a, &ch);return 0;
}
2、c++各种输出方式的不同
- //cin ==>stdin //有buffer缓冲区
- //cinout ==>stdout //有buffer缓冲区
- //cerr ==>stferr //no buffer缓冲区
- //clog ==>stdout //有buffer
int main()
{ //数据类型的变化不会改变代码语句
int a{};
char ch{};
cin >> a >> ch; //提取符
//cin >> a , ch; //error,每个变量 前必须有提取符
cout << a << " " << ch << endl; //endl相当于\n,有缓冲区,当碰到endl时就把缓冲区的东西打到屏幕上
cerr << "hhh"; //没有缓冲区,直接打到屏幕上
clog; //日志
return 0;
}
3、输出重定向问题
stdout 可以将输出重定向到某个文件上;
stderr 不能将输出重定向,只能输出到控制台中。
int main()
{
int a{ 10 };
cout << "www111" << endl;
cerr << "zzz222";
return 0;
}//用Linux ./main > 1.txt