c - 卡在空格和数组中

标签 c arrays

我想显示一个全名,但我不能输入一个名字的两个以上部分。当输入的名称字符数多于数组的字符数时,程序卡住了。我该如何解决这个问题?

#include <stdio.h>
#include<stdlib.h>
int main(){
char x[25];
printf("Enter your name");
scanf("%s",x);  
printf("Your name is %s", x);
return 0;
}

谢谢

最佳答案

我想这对你有帮助。该程序不关心您输入了多少个字符、空格。它只显示前 24 个字符和空格。 (1 个用于字符串终止符)

#include <stdio.h>
#include <stdlib.h>

int main(){
   char x[25];
   char *xx=x;
puts("Input Name");
fgets(xx,25,stdin);
puts(xx);

return 0; 
  }

关于c - 卡在空格和数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40087329/

相关文章:

c - EVP_CIPHER_CTX_set_key_length 接受河豚的错误大小

c - 为什么会出现段错误(核心转储)?

c - 辅助线程中的信号处理

c - 如何给二维动态数组赋值?

javascript - 有效地将一个数组中的字段合并到另外两个数组中

php - 使用 Laravel 从数组中获取 JSON 值

java - JButton 数组的空指针

字符到字符* 错误消息

C++:按顺序访问元素时,访问 C 数组的速度要快得多

php - 如何在 php 或使用 MySQL 中解决 'array overflow'?