[C言語入門]画面にメッセージを表示させてみる

文法とか細かいことは置いといて、プログラムを1つ作ってみます。
作業は、windowsにインストールしたcygwin環境で行います。


まず、下記のファイルをエディタで作成します。

#include <stdio.h>
main()
{
    printf( "hello world\n" );
}



作ったファイルは、以下のフォルダに保存してください。
(usernameの部分は、Windowsにログインしているユーザ名になります)
C:\cygwin\home\username\work


保存できたらlsコマンドで作ったファイルが存在することを確認し、コンパイルを行います。
コンパイルエラーが無ければ、a.exeというファイルが存在しているはずです。

$ ls
hello.c
 
$ gcc hello.c
 
$ ls
a.exe  hello.c



“./a.exe”コマンドで作ったプログラムを実行し、”hello world”という文字が出ればOKです。

$ ./a.exe
hello world



プログラムを見てみるといろいろな記述がありますが、順にチェックしてきます。
まず、1行目の#includeに関しては、とりあえず常に書く”おまじない”と思ってください。
(後述するprintf()関数を使用できるようにするための指令のようなものです)

2,3,5行目の “main()”, “{“, “}”も、とりあえずはお約束です。

4行目にはprintf…という行があり、ここでコンピュータに実行させる命令を指示しています。
プログラムの内容は、mainの”{“, “}”内に記述していきます。


再度4行目を見てみると、printfに対してカッコの中で、表示される文字を指定しています。
printfはコンピュータに対して何をさせるかを指示する命令で、これをC言語では”関数”と呼びます。

#include <stdio.h>
 
main()
{
    printf( "hello world\n" );
}



この中のメッセージを以下のように変更すれば、好きな文字を表示させることができます。

    printf( "hello japan\n" );


ダブルクォーテーション記号(“)で囲まれたメッセージを文字列と呼び、これはprintf関数に対して渡す付加情報となります。
一方、printf関数から見るとカッコ内に囲まれた情報のことを、引数(ひきすう)と呼びます。



また、複数のprintf関数を書くことで、複数行のメッセージを表示できます。
C言語では、複数の関数を書いた場合、上から順に実行されていきます。

#include <stdio.h>
 
main()
{
    printf( "hello world\n" );
    printf( "hello japan\n" );
    printf( "hello tokyo\n" );
}



上記プログラムの実行結果は、以下のようになります。

$ gcc hello.c
 
$ ./a.exe
hello world
hello japan
hello tokyo




printf関数の引数として渡した文字列のには、最後に”\n”という文字が入っていますが、この文字はC言語では改行文字を意味します。
“\n”の改行文字無しでprintfを実行すると、以下のようにメッセージが1行で表示されることになります。

#include <stdio.h>
 
main() 
{
    printf( "hello world" );
    printf( "hello japan" );
    printf( "hello tokyo" );
}



$ gcc hello.c
 
$ ./a.exe
hello worldhello japanhello tokyo




また、このルールを使用することで、最初に作成した”hello world”を表示するプログラムを、あえて複数の命令に分けて記述することもできます。
(ただし、人が読みづらくなるのであまりこのような書き方はしませんが…)

#include <stdio.h>
 
main() {
    printf( "hell" );
    printf( "o wo" );
    printf( "rld\n" );
}





今回のまとめ


今回学んだことは以下の3点です。

プログラムはmain()の中に記述していく。
プログラムは、上から書いた順に実行されていく。
画面に文字を表示させるためには、printf関数を使用する。
関数には、動作内容を規定するために、引数を渡すことができる。



関連記事

コメントを残す

メールアドレスが公開されることはありません。