私はubuntuが新しいので、我慢してください。
大学のコース用にCベースのプログラムを作成する必要があります。大学の研究室にいたとき、OSとしてopenSUSEを使用し、ターミナルエミュレータとしてkonsoleを使用していました。
したがって、基本的にはシステムにopenSUSEをインストールするか、VMを使用してインストールする必要があります。しかし、私はそれを行うのが面倒なので、openSUSEではなくUbuntuで実行しようとしました。
ただし、Ubuntuのターミナルで動作するCコードはないようです。コンパイルは成功しましたが、実行されていないか、少なくともprintf
が実行されていません。
これは私のコードで、非常にシンプルなものです:
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
int main()
{
printf("test");
return 0;
}
gcc test.c -o test
でコンパイルすると、すべてが正常に動作し、実行可能ファイルが取得されます。
次に、./test
で実行しようとしましたが、printf
は出力されません。エラーまたは警告は表示されませんでした。
何か不足していますか?
注:私のgcc
は新しいものです。問題はないはずです。
プログラムの出力は次のとおりです。
printf ("test");
のテキストが印刷され、shubham@shubham-pc:~$
行の前に表示されます
プログラムには\n
がないため、改行は最後に出力されず、コンソールのデフォルト行はその後に出力されます
これを解決するには、プログラムは次のようになります。
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int main()
{
printf("%s \n","test");
return 0;
}
ここで行ったことは、フォーマット文字列(%s
)を使用してtest
を印刷し、その後に改行(\n
)を追加したことです。
編集後の出力は次のとおりです。