C语言获取整行输入的多种方法 您所在的位置:网站首页 c语言中hhd C语言获取整行输入的多种方法

C语言获取整行输入的多种方法

2023-05-13 14:40| 来源: 网络整理| 查看: 265

在C语言中,有多种方法可以实现从标准输入流(stdin)中读取整行输入;最常见的方法是使用例如fgets()、scanf()、getchar()这些函数;

方法一:使用fgets()函数

fgets()函数可以从指定的文件中读取一行数据,常用于从标准输入读取用户的输入;

fgets()函数需指定最大字符数,当读取到文件结束符或读取到指定的最大字符数时,fgets()会停止读取;

示例代码 #include int main() { char input[10]; fgets(input, 10, stdin); printf("输入的字符串为:%s\n", input); }

程序运行结果

123456789abcdefg 输入的字符串为:123456789

这个示例中,输入的字符超数量过了10个,所以fgets()函数只读取了9个字符(还需存放'\0'字符);

方法二:使用scanf()函数

scanf()函数可以从标准输入中读取指定格式的数据,可以使用%s格式符来读取一行字符串;

scanf()函数读取的字符串包含换行符,可以使用%[^\n]格式符来消除换行符;

示例代码 #include int main() { char input[255]; scanf("%[^\n]", input); printf("输入的字符串为:%s\n", input); }

程序运行结果

123 456 abc 输入的字符串为:123 456 abc 方法三:使用getchar()函数

getchar()函数可以从标准输入读取一个字符,通过循环读取字符直到读取到换行符时停止来实现整行读取;

示例代码 #include int main() { char input[255]; int i = 0; int c = getchar(); while (c != '\n') { input[i++] = c; c = getchar(); } input[i] = '\0'; printf("输入的字符串为:%s\n", input); }


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有