ID非公開

2021/2/26 0:41

66回答

c言語というのは初めにある関数がどのようなことをする関数であるのかを書いておいて、その関数をプログラムの中で使っていくという感じなのでしょうか?main関数などは、あらかじめstdio.hにより定義されているため

C言語関連40閲覧xmlns="http://www.w3.org/2000/svg">250

ベストアンサー

0

その他の回答(5件)

0

そもそも一般的なプログラムというモノは「メインルーチン」と「サブルーチン」から構成されます。故にC言語に限らず、すべての言語があなたの言うことに当てはまります。 もっとも、「ルーチン」をどう呼ぶかは言語によって異なりますけどね。Cではそれを「関数」と呼びます。

0

C言語では、 どのような関数が存在するのか、と それぞれの関数が何をするのか、は 別々に書かれます(同時に書くことも可能ですが) 前者を「宣言」、後者を「定義」と呼びます。 基本的には、宣言だけがあれば、その関数を使う事ができます。 stdio.hの中には基本的な入出力を行う関数の宣言だけがあります。 宣言さえあれば、呼び出し方が分かるので、とりあえずは問題ないのです。 しかし、プログラム化する時には、定義部分が必要になります。 これは別の場所にあります。 main関数は、どこにも宣言も定義もされていません。 なせなら、それを宣言し、定義するのはあなたの役目だからです。 あなたがソースコードに書いたmain関数、それが、宣言であり定義になります。 C言語は、自分で様々な関数を宣言し定義して、プログラムを作ってく言語です。

0

main関数はお約束です。そこから始まりますよと言う事でプロトタイプ宣言はありません。 stdio.hは基本入出力の関数のプロトタイプ宣言です。入出力は必ずありますので宣言します。なんの入出力もせずにコンパイルだけ通ればよければ必要ありませんが意味無いですよね。

0

printf関数などの話をされているのでしょうか。stdio.hの中では定義されているのではなく宣言されています。定義は(もしかするとOSにもよるかもしれませんが)普通はglibcにあるはずです。 main関数こそあなたが定義しないと何も起こりませんよ?