程序在预期输出后打印 %

Program printing % after expected output

我是 C++ 的新手,只是 运行 我的第一个程序。问题是输出在预期输出之后有一个“%”。
我已经使用 Homebrew 安装了 LLVM, brew install llvm
我试过用 clang++(用 llvm 安装)和 g++(macOS 默认)编译。

#include <iostream>

int main()
{
        std::cout << "Yo!";
        return 0;
}
#include <iostream>

int main()
{
        std::cout << "Hello";
        return 0;
}

Output for both programs using clang++
谢谢!

'%' 由您的 shell(可能是 Zsh?)在程序完成后打印,但没有打印换行符作为其输出的最后一个字符。

为了防止这种情况,输出一个换行符:

std::cout << "Hello\n";