在 Solaris、Linux、Windows 和 Mac 上用 C 语言清除屏幕
我正在用 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
事实证明这是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!