#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main() {
//创建字符数组并且清零
char ch[1024] = { 0 };
//fgets,参数一:输入的参数存放到ch数组中;参数二:最大输入多少个字符;参数三:从标准输入键盘输入
fgets(ch, sizeof(ch), stdin);
//strlen库函数,计算字符数组共计有多少有效字符,减一即为最后一个有效字符\n在数组中的索引,令\n等于0,达到去除\n的效果
ch[strlen(ch) - 1] = 0;
printf("%s\n", ch);
system("pause");
return 0;
}
fgets库函数可以从标准输入接收空格,并且可以限制数组中字符个数,避免内存污染
strlen库函数可以计算字符数组中有效字符的个数
具体实现代码如下
/*数字0(和字符‘\0’等价)结尾的char数组就是一个字符串,
但如果char数组没有以数字0结尾,那么就不是一个字符串,只是普通字符数组,所以字符串是一种特殊的char的数组。*/
char ch[1024] = "helloA";
int i = 0;
while (ch[i] != '\0') {
i++;
}
printf("%d\n", i);
也就是说helloA总共是6个有效字符。