输入输出函数



首先大部分函数的详细用法都能在MSDN中找到,自觉查找MSDN是基本素质。

1、scanf() 函数有返回值,输入成功会返回输入元素的个数
    例子:Assert( 2==scanf("%s %s", str1, str2) )

2、gets() 和 scanf("%s",...) 的区别
    gets() 在从文件输入的时候(stdin 也看成文件),读入以 '\n' 为结尾的字符串,并吃掉 '\n';而scanf 则读入以空格为端点的串(空格不读入,也不吃掉)

3、cout 与 printf 区别
    ①printf为函数,cout是ostream的对象,和<<配合使用。
    ②printf为变参函数,没有类型检查,不安全;cout是通过运算符重载实现的,安全操作。
    ③printf碰到自定义类型无法输出;cout可自行重载进行扩展。
    ④cout将输出结果存放到缓冲区,然后一次性输出,cout的实现调用了printf。
    ⑤cout<<"\n"; 与 cout<<endl 不同。\n 为字符,endl会将缓冲区的数据全部输出并清零。

4、编译器和操作系统的差异导致:一般long long 的输出采用 cout,如果平台运行可以使用 printf("%lld"),一般基于linux系统的编译器都支持,unsigned long long 使用 "%llu"

5、部分输入需要过滤前导空格,可以采用这种用法:scanf("%d..");// 只要在前面加个空格,就会将输入流中的空格回车tab 滤掉,然后再读入,对于尾部空格也适用。

6、cin.get 可以接受字符,也可以接受字符串(此时可以容纳空格、tab);无参数时,cin.get(),仅返回第一个字符的ASCII码:int a=cin.get();输入:1234回车,a=49(a的ASCII码)

7、cin.getline 接受字符串,同cin.get 接受字符串时用法相似。但是需要注意:getline函数有三个参数,最后一个参数默认为 '\0',表示输入的结尾字符,一般情况下省略。

8、getline()函数,该函数使用需要包含 #include<string>,可以接受空格并输出。一般可以这样使用:string str; getline(cin, str);//即输入到字符串str中。

9、gets()。接受字符串,可容纳空格,需包含 #include<string>。

10、最后,大部分的字符处理函数都存在于 <string>中,需要时在其中查找。
首先大部分函数的详细用法都能在MSDN中找到,自觉查找MSDN是基本素质。

1、scanf() 函数有返回值,输入成功会返回输入元素的个数
    例子:Assert( 2==scanf("%s %s", str1, str2) )

2、gets() 和 scanf("%s",...) 的区别
    gets() 在从文件输入的时候(stdin 也看成文件),读入以 '\n' 为结尾的字符串,并吃掉 '\n';而scanf 则读入以空格为端点的串(空格不读入,也不吃掉)

3、cout 与 printf 区别
    ①printf为函数,cout是ostream的对象,和<<配合使用。
    ②printf为变参函数,没有类型检查,不安全;cout是通过运算符重载实现的,安全操作。
    ③printf碰到自定义类型无法输出;cout可自行重载进行扩展。
    ④cout将输出结果存放到缓冲区,然后一次性输出,cout的实现调用了printf。
    ⑤cout<<"\n"; 与 cout<<endl 不同。\n 为字符,endl会将缓冲区的数据全部输出并清零。

4、编译器和操作系统的差异导致:一般long long 的输出采用 cout,如果平台运行可以使用 printf("%lld"),一般基于linux系统的编译器都支持,unsigned long long 使用 "%llu"

5、部分输入需要过滤前导空格,可以采用这种用法:scanf("%d..");// 只要在前面加个空格,就会将输入流中的空格回车tab 滤掉,然后再读入,对于尾部空格也适用。

6、cin.get 可以接受字符,也可以接受字符串(此时可以容纳空格、tab);无参数时,cin.get(),仅返回第一个字符的ASCII码:int a=cin.get();输入:1234回车,a=49(a的ASCII码)

7、cin.getline 接受字符串,同cin.get 接受字符串时用法相似。但是需要注意:getline函数有三个参数,最后一个参数默认为 '\0',表示输入的结尾字符,一般情况下省略。

8、getline()函数,该函数使用需要包含 #include<string>,可以接受空格并输出。一般可以这样使用:string str; getline(cin, str);//即输入到字符串str中。

9、gets()。接受字符串,可容纳空格,需包含 #include<string>。

10、最后,大部分的字符处理函数都存在于 <string>中,需要时在其中查找。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值