【问题标题】:% is appending to C- program output [duplicate]% 附加到 C 程序输出 [重复]
【发布时间】:2022-01-14 07:41:18
【问题描述】:

问题:% 正在附加到我的 C 程序输出中。我也从 Mac 终端执行程序。它还给出了输出,后跟"%" 符号。请建议如何解决?附上截图

我的代码:

#include<stdio.h>
int main()
{
    int num1,num2,sum;
    num1 = 20, num2 = 30;
    sum = num1 + num2;
    printf("the sum: %d",sum);
    return 0;
}

**VS Code 终端的程序输出**

Jigneshs-MacBook-Air~  # gcc -o runme var.c
Jigneshs-MacBook-Air~  # ./runme           
the sum: 50%  

预期输出

the sum: 50  

平台详情: 操作系统:MacOS BigSur(苹果 M1 芯片) IDE:VS Code(版本:1.63.2)

附上截图

【问题讨论】:

  • 感谢@Yunnosch。将新行“\n”添加到程序输出行。它已修复。这个link italic bold 有帮助。 printf("the sum: %d \n",sum);

标签: c visual-studio-code vscode-settings


【解决方案1】:

使用 mac 不是问题,不在输出末尾添加 \n 会导致此问题。 The % is autoinserted if there is no newline character.

Here's 另一个我认为是同样问题的 stackoverflow 帖子。

试试这个:

#include<stdio.h>
int main()
{
    int num1,num2,sum;
    num1 = 20, num2 = 30;
    sum = num1 + num2;
    printf("the sum: %d\n",sum);
    return 0;
}

【讨论】:

  • 请不要回答已经提出重复的片段。 (请注意,在我的近距离投票之前,当您回答时,它们已经被支持了......)应该避免在明显知道其他 SO 答案时回答,并且最好将其标记为重复。
【解决方案2】:

当没有换行符时,'%' 表示输出结束的位置。 在输出的末尾添加一个换行符('\n'),符号应该消失了。

【讨论】:

  • 请不要回答已经提出重复的无法解释的片段。 (请注意,在我的近距离投票之前,当你回答时,它们已经被支持了......)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-09-07
  • 1970-01-01
  • 2017-01-31
  • 1970-01-01
  • 2017-05-04
  • 2017-10-07
  • 1970-01-01
相关资源
最近更新 更多