マガジンのカバー画像

C言語

63
C言語に関するあれこれ
運営しているクリエイター

#define

C言語 「main」関数と分離する

C言語 「main」関数と分離する

序章前回までで足し算プログラムを作りました。

関数は「main」関数が1つだけ。

「main」関数はC言語において特殊です。
プログラムを実行したとき、この「main」関数から実行されます。
プログラムの中で「main」関数は必ず必要であり、複数存在してはいけません。唯一無二の存在です。

C言語で書かれたプログラムは必ず「main」関数を持ちます。
プログラムAからプログラムBへコードを移植

もっとみる
[コラム]プリプロセッサのいろいろ

[コラム]プリプロセッサのいろいろ

[コラム]プリプロセッサのいろいろ 1

ものすごく複雑なマクロに出会った。
コンパイラのバグで展開できなかった。

[コラム]プリプロセッサのいろいろ 2

C言語のヘッダファイルというのはとても便利そうに見えるのだが、本当は実に面倒な代物である。
分離して書くことをプログラマに強いている。
だから、JavaもC#もこれを排除した。

[コラム]プリプロセッサのいろいろ 3

「#define」

もっとみる
【C言語】コンパイラが何をしているのか、ちょっとのぞいてみよう その2 プリプロセッサ

【C言語】コンパイラが何をしているのか、ちょっとのぞいてみよう その2 プリプロセッサ

C言語のコンパイラというのは、次の4つのステップで成り立ちます。

(1)プリプロセッサ
(2)コンパイル
(3)アセンブル
(4)リンク

まとめて説明しようと思いましたが、長くなったので個別に。

まずは、プリプロセッサから。

(1)プリプロセッサ

プリプロセッサというのは、「#」で始まるプリプロセッサ命令を処理します。

「#include」で指定されたファイルを読み込み、
「#defi

もっとみる