ACM字符串输入问题


坑死了。。竟然被这个问题困扰了大半个学期,今天搜来翻去终于弄明白了一些,以后固定用这几种用法好了不然总出错QAQ
实际测试例子就没放了,死记这里就够用了T-T

概念:

gets()函数:用来从标准输入设备(键盘)读取字符串直到换行符结束。

cin 可以连续从键盘读取想要的数据,以空格、tab或换行作为分隔符。

scanf("%s",str) 可以连续从键盘读取想要的字符串(数组),以空格、tab或换行作为分隔符。

基本用法:

                    C语言:读入一段带空格的字符串使用gets()        头文件#include<stdio.h>

                                  读入一段不带空格的字符串使用scanf("%s",str)      头文件#include<string.h>

                                  

 

                    C++:     读入一段带空格的字符串使用gets()       头文件#include<iostream>

                                 读入一段不带空格的字符串使用cin       头文件#include<cstring>

 

附一个小问题:

一般使用ACM会多次使用这些输入函数,
但是如果出现这样一个情况:第一次输入的字符串长度大于第二次输入的字符串长度。
那么strlen测量字符串长度时会怎样呢?
经过测试结论是 测出长度为第二次字符串的长度(原来第一次读入多的字符串还在)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM