在C语言中,字符串是一系列以空字符(‘\0’) 结尾的字符数组。要输入和输出字符串,可以使用 C 标准库中提供的一些函数。
字符串输入
C语言提供了多种函数来从控制台等输入设备中读取输入的字符串,其中最常用的是 scanf() 和 fgets() 函数。
使用 scanf() 函数输入字符串
scanf() 函数可以用于读取格式化的输入,包括字符串。要输入一个字符串,需要使用 %s 格式标志。以下示例演示了如何使用 scanf() 函数输入字符串:
#include <stdio.h>
int main() {
char name[20];
printf("Enter your name: ");
scanf("%s", name);
printf("Hello, %s!\n", name);
return 0;
}
在这个示例中,我们首先使用 char 类型的数组 name 来存储输入的字符串,然后使用 scanf() 函数读取输入并将其存储在该数组中。 %s 格式标志告诉 scanf() 函数读取一个字符串,它会自动跳过输入中的空格和换行符。
使用 fgets() 函数输入字符串
fgets() 函数可以用于从 stdin 中读取一个字符串,包括空格和换行符,以及指定要读取的字符串的最大长度。以下示例演示了如何使用 fgets() 函数输入字符串:
#include <stdio.h>
int main() {
char name[20];
printf("Enter your name: ");
fgets(name, 20, stdin);
printf("Hello, %s!\n", name);
return 0;
}
在这个示例中,我们将要读取的字符串的最大长度设置为 20 个字符,并使用 fgets() 函数从输入中读取它。第一个参数 name 是用来存储输入字符串的缓冲区,第二个参数 20 是指缓冲区的最大大小,第三个参数 stdin 是要读取的输入设备。
字符串输出
字符串的输出在C语言中比输入简单,可以使用 C 标准库中的 printf() 函数。
使用 printf() 函数输出字符串
要输出字符串,只需使用 %s 格式标志,后跟要输出的字符串。以下示例演示了如何使用 printf() 函数输出字符串:
#include <stdio.h>
int main() {
char name[] = "ChatGPT";
printf("Hello, %s!\n", name);
return 0;
}
在这个示例中,我们创建了一个字符串常量,将其存储在 char 类型的数组 name 中,然后使用 printf() 函数输出该字符串。 %s 格式标志告诉 printf() 函数输出一个字符串。