📜  c 读取字符串 - C 编程语言(1)

📅  最后修改于: 2023-12-03 14:59:39.640000             🧑  作者: Mango

以'C 读取字符串'为主题的介绍

C 语言中的字符串

在 C 语言中,字符串是字符数组的一种表现形式。字符串以 '\0'(ASCII 码为 0)结尾,被称为 null 字符。C 语言中的字符串必须是以 null 字符结尾的字符数组。

读取字符串的几种方法
使用 scanf 函数
char s[100];
scanf("%s", s);

上述代码可以直接读取字符串,"%s" 表示读取字符串类型的变量。

使用 gets 函数(不安全)
char s[100];
gets(s);

gets 函数可以读取一行字符串,但是这种方式不安全,可能导致缓冲溢出(buffer overflow)。

使用 fgets 函数
char s[100];
fgets(s, 100, stdin);

fgets 函数可以安全地读取一行字符串,然而它会读取换行符 '\n',需要手动去掉。

使用 getchar 函数
char s[100];
char c;
int i = 0;
while ((c = getchar()) != '\n') {
    s[i++] = c;
}
s[i] = '\0';

getchar 函数每次读取一个字符,直到读取到 '\n' 符号结束,需要手动插入 null 字符。

总结

以上几种方式都可以用来读取字符串,但是需要注意使用的情况。在实际开发中,为了保证代码的安全,建议使用 fgets 函数读取字符串。