C 语言字符串输出与长度计算:掌握 puts, fputs 和 strlen
各类资料学习下载合集
https://pan.quark.cn/s/8c91ccb5a474
在 C 语言中,与用户进行交互是程序的基本功能之一。除了从用户那里获取输入(我们通常使用 scanf
或更安全的 fgets
),程序还需要将信息输出到屏幕上。字符串作为表示文本信息的基本类型,其输出操作尤为重要。本文将介绍 C 语言中几种常用的字符串输出函数:printf
、puts
和 fputs
,并探讨如何计算字符串的长度,以及如何利用长度信息处理 fgets
输入时遇到的常见问题——去除末尾的换行符。
1. 字符串输出函数:不同的选择
我们已经知道 printf
函数配合 %s
格式说明符可以输出字符串。但 C 语言还提供了另外两个专门用于输出字符串的函数:puts
和 fputs
。它们各有特点,适用于不同的场景。
1.1 printf
函数 (%s
)
printf
是一个功能强大的格式化输出函数,它可以输出各种类型的数据,包括字符串 (%s
)。
#include <stdio.h>int main() {printf("--- 使用 printf 进行字符串输出 ---\n");char greeting[] = "Hello, C!";printf("使用 %%s 打印: %s\n", greeting); // %s 遇到 '\0' 停止打印printf("--- printf 示例结束 ---\n");return 0;
}
编译和运行:
gcc printf_string.c -o printf_string
./printf_string
运行结果:
--- 使用 printf 进行字符串输出 ---
使用 %s 打印: Hello, C!
--- printf 示例结束 ---
printf
的 %s
功能强大,可以在输出字符串的同时进行格式化,或者与其他数据混合输出。末尾的换行符需要我们手动添加(例如上面的 \n
)。
1.2 puts
函数
puts
函数用于向标准输出(通常是屏幕)写入一个字符串,并在字符串末尾自动添加一个换行符。它的原型是 int puts(const char *s);
,接受一个指向字符串的指针作为参数。
相比 printf("%s\n", ...)
,puts
在只输出一个字符串并换行时更简洁高效。
#include <stdio.h>int main() {printf("--- 使用 puts 进行字符串输出 ---