这是我简单的c代码。谁能告诉我为什么它给我这个输出?我正在使用gcc编译器(版本:7.3.0)在arch linux 4.15.1-2-ARCH机器上编码我用以下代码编译:gcc --std = c99 -Wall --pedantic client.c -o client
我有以下代码:
#include <stdio.h>
int main(void) {
printf("Test.");
return 0;
}
但它得到以下输出:Test.%
我不知道%来自哪里。如果有人能给我一个提示,那就太好了。
您的printf
字符串不包含换行符。因此,在您的程序打印之后,您的shell通常会打印出任何字符串作为提示。
在我的机器上运行:
$ ./x1
Test.$
我的提示是“$”,这就是字符串后面出现的内容
将\n
(换行符的转义序列)添加到字符串将使您的提示出现在以下行:
printf("Test.\n");
输出:
$ ./x1
Test.
$
尝试:
printf("Test.\n");
您的程序打印的单词Test.
可能与终端提示符的第一个字符一起加入。添加\n
将打印一个新的行字符,因此当您的程序退出时,您的终端提示将写在下一行。