ページ 11

Mac Xcordでの画面のクリア

Posted: 2020年7月21日(火) 02:15
by taka2001
MacのXcordで開発を作業をおこなっています。
scanfで数値を入力して、その数値を画面上から消してから次の処理に進みたいです。
ネットで調べたところ、system("clear");でできるとのことなので、行なったのですが、
Implicit declaration of function 'system' is invalid in C99のwarningが表示されてしまいます。
この方法の解決策か他の手法はないでしょうか?

一応コードと実行結果を貼っておきます。
<cord>
#include <stdio.h>

int main(){

int num;

printf("自分の数字を入力\n>");
scanf("%d",&num);
system("clear");

return 0;
}
</cord>

<実行結果>
自分の数字を入力
>315
TERM environment variable not set.
Program ended with exit code: 0

Re: Mac Xcordでの画面のクリア

Posted: 2020年7月21日(火) 02:18
by taka2001
taka2001 さんが書きました:
3年前
MacのXcordで開発を作業をおこなっています。
scanfで数値を入力して、その数値を画面上から消してから次の処理に進みたいです。
ネットで調べたところ、system("clear");でできるとのことなので、行なったのですが、
Implicit declaration of function 'system' is invalid in C99のwarningが表示されてしまいます。
この方法の解決策か他の手法はないでしょうか?

一応コードと実行結果を貼っておきます。
[cord]
#include <stdio.h>

int main(){

int num;

printf("自分の数字を入力\n>");
scanf("%d",&num);
system("clear");

return 0;
}
[/cord]

<実行結果>
自分の数字を入力
>315
TERM environment variable not set.
Program ended with exit code: 0

Re: Mac Xcordでの画面のクリア

Posted: 2020年7月21日(火) 07:25
by みけCAT
system()はstdlib.hにある関数なので、コードの先頭に

コード:

#include <stdlib.h>
を追加してください。

Re: Mac Xcordでの画面のクリア

Posted: 2020年7月21日(火) 21:11
by あたっしゅ
 まず、"Xcord", ""cord" でなく、"XCode", "code" ですね。

TERM environment variable not set. は、
「環境変数 TERM に値がセットされていない」という意味です。 xterm に設定してみると、

コード:

#include <stdio.h>
#include <stdlib.h>
    
int main(){
    int num;
    
    printf("自分の数字を入力\n>");
    scanf("%d",&num);
    setenv( "TERM", "xterm", 1 );
    system("clear");
    
    return 0;
}
    
    
// end.
出力

[H[2JProgram ended with exit code: 0

 Xcode Version 11.4(11E146)/macOS Catalina 10.15.5/Mac mini(Lite 2014) でやってみましたが、
生の esc シーケンス(えすけーぷしーけんす)が表示されているようです。
「xcode system("clear");」で検索してみると、
https://stackoverflow.com/questions/934 ... n-in-xcode
とあるようです。