c - 如何制作一个 while 循环,它会一直输入字符串,直到我什么都不输入?
问题描述
我正在使用 C 语言,我想创建一个循环,让我的代码一直要求输入,直到我输入“”?
char inputarray[1000];
int size;
printf("\nEnter a string: ");
fgets(inputarray,1000,stdin);
size = strlen(inputarray);
printf("%d \n", size);
printf("%s \n", inputarray);
解决方案
我猜你正在寻找这样的东西:
#include <stdio.h>
#include <string.h>
int main(void)
{
char inputarray[1000];
int size;
do
{
printf("\nEnter a string: ");
if(!fgets(inputarray,1000,stdin)) /* Check for EOF , or NULL upon return */
{
return -1;
}
size = strlen(inputarray)-1; /* Ignoring '\n' */
printf("%d \n", size);
printf("%s ", inputarray); /* No need for '\n' since
fgets stores every character including newline in the buffer */
}while(strcmp(inputarray,"\n")); /* Meaning strcmp doesnt return 0 */
return 0;
}
推荐阅读
- regex - 使用 Stanza 提取日期时间短语
- linux - 如何在 Git 标签中实现分页
- angular - 带有来自枚举的queryParams键的角度路由器链接
- node.js - 错误代码 nodejs : unhandledpromiserejectionwarning
- python - 继承是否适用于静态变量
- ip - VLSM - 主机数量
- linux - Linux 中的 RabbitMQ 在某些部署中随机丢弃连接
- regex - 我找不到将删除开始行和结束行包含大括号的一组行的正则表达式
- html - CSS:* vs :root vs html vs body。为字体大小、字体系列设置默认值的标准做法是什么?
- apache-kafka - 一个分区卡夫卡风暴消费者中的偏移问题