C语言字符操作
char ch;
char ch = getchar(); 以回车为确认输入,在缓冲区中包含“输入的字符”和“回车”。
putchar(ch); 将getchar()中的字符打印。
scanf(“%c”,&ch); 同getchar()。
printf(“%c”,ch); 同putchar()。
注:getchar()、putchar()的效率优于scanf()、printf(),但效果一样。
↑↑↑多出的“回车”可以用getchar()消除。
C++字符操作
char ch;
cin>>ch; 从键盘缓冲区中取字符时会过滤空格tab回车。
cout<<ch; 将缓冲区字符打印。
C语言字符串操作
char s[maxsize];
gets(s); 不接收回车,并在结尾补充’\0’。
scanf(“%s”,s); 以空格tab回车为结尾。
C++字符串操作
char s[maxsize];
cin>>s;以空格tab回车为结尾。
string s;
getline(cin,s); 不接收回车。
注:gets(),scanf(),cin都会在串尾补上’\0’作为字符串结束标记。
而getline()有自己的结束标记。
puts(s),printf(“%s”,s)或cout<<s可以输出s串。
这三个函数都是输出从第一个字符到’\0’之前的所有字符。
注:puts()会自动换行。
s若为string类型,也可以用cout<<s输出s串。