dockerでさくっとC言語の hello world
大学ぶりにC言語をやってみたいな〜と思い、dockerでサックとgccの環境を構築してみました。
gccのイメージが入ったコンテナを起動します。イメージを持っていない場合はdockerが自動でimageをプルしてくれます。
docker run -v "$PWD":/usr/src/myapp -w /usr/src/myapp -it gcc:4.9
# -v ローカルのvolumeをコンテナにマウント
# -w コンテナのworkdirを定義
# -it コンテナにログイン
早速c言語でハローワールド
app.c
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
printf("Hello World!\n");
printf("ハローワールド!\n");
return 0;
}
app.cをコンパイルし、実行ファイルを実行
$ gcc app.c -o a.out
$ ./a.out
# 出力結果
# Hello World!
# ハローワールド!
番外編
stdlib.h + argv を使ったサンプル
app.c
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int i, result = 0;
for (i = 1; i < argc; ++i)
{
printf("argv[%d] = %s\n", i, argv[i]);
result += atoi(argv[i]);
}
printf("Total Sum = %d\n", result);
return 0;
}
実行結果
$ gcc app.c -o a.out
$ ./a.out 1 2 3
# 出力結果
# argv[1] = 1
# argv[2] = 2
# argv[3] = 3
# Total Sum = 6
Author And Source
この問題について(dockerでさくっとC言語の hello world), 我々は、より多くの情報をここで見つけました https://qiita.com/edisonthk/items/819b93439c8618c882ca著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .