C言語 7-3 <発展> そのほかのプリプロセッサ命令 本トピックは発展的な内容を扱うので飛ばして構いません。一通りC言語の学習を終えてから見ることをお勧めします。 マクロの定義によって処理を変える #ifdef #ifndef #else #endif これらのプリプロセッ... 2022.02.28 C言語
C言語 7-2 プリプロセッサ命令を使うときの注意点 プリプロセッサ命令の文法 C言語では文の終わりにセミコロン;をつける必要がありますが、プリプロセッサ命令はコンパイラが直接解釈するものではないので、セミコロンをつける必要がありません。C言語ではフリーフォーマットのため改行やスペース... 2022.02.28 C言語
C言語 7-1 プリプロセッサ命令とは プリプロセッサ命令 プリプロセッサ命令とはコンパイル前にコンパイラに対して特定の処理をさせる命令です。代表的なプリプロセッサ命令を2つ紹介します。プリプロセッサ命令は、コンパイラに対する命令なので、C言語の文法は適用されません。プリ... 2022.02.25 C言語
C言語 ビット演算 C言語にはビット演算という演算方法が用意されています。PCでは全てのデータは0,1の2進法で表現されていて、2進数の一桁を単位としてビットと呼びます。多くの場合1バイト=8ビットなので、例えば、intが4バイトの処理系ではintは32ビッ... 2022.04.16 C言語
C言語 6-8 <発展> 関数呼び出し規約と前方宣言 本トピックは発展的な内容を扱うので飛ばして構いません。一通りC言語の学習を終えてから見ることをお勧めします。 関数呼び出し規約 C言語における関数呼び出し規約とは、関数を呼び出す、または値を返却するという処理に関する決まりのこ... 2022.04.16 C言語
C言語 3-6 変数名の命名規則 識別子 変数名は基本的に自由に決められますが、一定の規則があります。例えば、他の場所ですでに使用されている名前は使用できません。区別がつかなくなるためです。 変数名以外にも関数名、ポインタ名、マクロ名などはプログラマーが自由に... 2022.04.29 C言語
C言語 8-2 間接参照 関節参照演算子 C言語のポインタは、単にアドレスを取得するためにあるのではありません。ポインタはアドレスを介して別の変数を指すことができます。つまり、ポインタを使うと別の変数にアクセスしたり値を書き換えることができます。これがポイン... 2022.03.02 C言語
C言語 8-1 アドレス 変数のアドレス C言語では、すべての変数はメモリ上に保存されます。sizeof(int)が4バイトの環境では、int型の変数はメモリ上の領域を4バイト使用しています。変数のメモリ上の位置をアドレスといいます。環境にもよりますが、1バ... 2022.03.01 C言語
C言語 8-4 ポインタと文字列の関係 文字列とポインタ 文字列リテラルはchar型配列の定数として処理されます。配列ということは、ポインタを使用すると途中の要素にアクセスできます。 #include <stdio.h> int main(void){... 2022.03.02 C言語
C言語 8-6 <発展> 関数のポインタ 本トピックは発展的な内容を扱うので飛ばして構いません。一通りC言語の学習を終えてから見ることをお勧めします。 変数や配列のポインタを考えることができましたが、関数に対してもポインタを考えることができます。 //変数へのポインタ... 2022.03.02 C言語