在Linux系统中,gets()
函数已经被废弃,不再推荐使用
#includeint main() { char buffer[256]; printf("Enter a string: "); fgets(buffer, sizeof(buffer), stdin); printf("You entered: %s", buffer); return 0; }
在这个示例中,我们使用fgets()
函数从标准输入(键盘)读取一行文本。sizeof(buffer)
确保我们不会读取超过缓冲区大小的字符,从而避免了缓冲区溢出。注意,fgets()
会将换行符保留在字符串中,如果需要移除换行符,可以使用以下代码:
char *newline = strchr(buffer, '\n'); if (newline != NULL) { *newline = '\0'; }