在 Solaris、Linux、Windows 和 Mac 上用 C 语言清除屏幕

发布于 2024-10-20 18:49:06 字数 404 浏览 2 评论 0原文

我正在用 C 编写一个小应用程序,想要清除终端/dos 窗口中的文本。

到目前为止,我已经:

  if (system("cls"))
    system("clear");

这似乎在除 Mac 之外的所有设备上都运行良好,这给了我错误:

sh: cls: 未找到命令术语 未设置环境变量。

奇怪的是,终端的 clear 有效,但 system(clear); 无效,我不知道为什么。

有谁知道我如何阻止这种情况,或者修改我的代码以清除 Mac 终端上的屏幕,该终端将在其他 ANSI C 兼容编译器上工作,而显然无需向控制台写入一堆 '/n'?

I am writing a small application in C and want to clear the terminal/dos window of text.

So far I have:

  if (system("cls"))
    system("clear");

Which seems to work fine on just about everything except Mac, which gives me the error:

sh: cls: command not found TERM
environment variable not set.

Whats weird, is that clear from the terminal works, but not system(clear); and I am not sure why.

Does anyone know how I can stop this, or modify my code to clear the screen on a Mac terminal which will work on other ANSI C compliant compilers, without, obviously, writing a bunch of '/n's to the console?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

遮云壑 2024-10-27 18:49:06

事实证明这是XCode内部编译和运行的问题。当在 XCode 之外编译并运行时,代码将按预期工作。哎哟!

It turns out this is a problem with compiling and running inside XCode. When compiled and run outside XCode, the code works as expected. Doh!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文