1.printf("%d\n",a);
scanf("%d %c", &a,&b);
是stdio.h中的格式化输出输出常用的格式化符号有
%d, %f, %u, %c, %s, %ld, %lld, %x, %o, %p
注意:scanf()
使用的时候输入的格式必须和双引号中的格式对应。而且scanf()
在输入遇到空格的时候会将空格前的内容进行输入。
2.int getchar(void);
从输入缓冲区中获取一个字符
int putchar(int c);
输出一个字符。
3.gets(char *s);
puts(const char *s);
用于输入字符串和输出字符串。
注意gets(s)
可以获得整行字符串,即使字符串中间有空格。
4.与以上标准输入输出函数对应的有向文件读取或写入字符的函数
fprintf(); fputs(); fputc(); fscanf(); fgets(); fgetc();
但是可以利用stdin
或stdout
使用上述函数同样达到向屏幕输入输出的目的。使用方法如下:
#include
int main(void) {
char a[64];
fgets(a,64,stdin);
fputs(a, stdout);
return 0;
}
5.需要注意,输入缓冲区一般在遇到回车键的时候进行刷新,但是其实此时从缓冲区中取出的只是回车键之前的内容,回车键还在缓冲区中,如果忽略会产生意料之外的结果,如以下程序:
#include
int main()
{
char str[20],ch;
scanf("%s", str);//此处如果输入一个"hello"并回车结束
ch=getchar();//ch的值其实是'\n'
printf("%s\n", str);
printf("%c", ch);//这句话并不能在控制台产生可视的效果
return 0;
}
6.某些编译器在遇到使用scanf('%s', str);
进行输入的时候会报安全错误,此时可以使用scanf_s('%s', str, 128);
,该函数会检查输入边界,避免了scanf();
不检查输入边界会导致内存溢出的问题。
1.cin
和cout
是C++中的输入输出,注意,cin
和scanf();
一样,遇到空格或tab也会结束输入。使用方法如下:
int a, b;
cin >> a >> b;//输入的a和b之间用空格或tab隔开
2.cin
的进阶用法如下:
char ch;
ch=cin.get(); //或者cin.get(ch),接收一个字符
char a[20];
cin.get(a,20); //可以接受空格
char m[20];
cin.getline(m,5);//效果和cin.get(a,5)一样,可以接受空格
cin的get和getline方法中的字符数量限制都会考虑最后的回车符,但是放入字符串中会丢弃回车符。
3.getline();方法是string中的方法用于输入字符串,用法如下
#include
string s;
getline(cin,s);
getline属于sstream,cin.getline属于istream
1.input()
和print()
是python中的输入输出函数,其中input()
可以接受字符串中的空格,使用方法如下
a = input("please intput a string:")
print(a)