学習に役立つチートシート、用語集、外部リンクをまとめました
| 型 | サイズ | 範囲 |
|---|---|---|
char |
1 byte | -128 ~ 127 |
int |
4 byte | -2,147,483,648 ~ 2,147,483,647 |
float |
4 byte | ±3.4E-38 ~ ±3.4E+38 |
double |
8 byte | ±1.7E-308 ~ ±1.7E+308 |
// 出力
printf("Hello %d\n", 10);
puts("Hello World");
// 入力
scanf("%d", &num);
gets(str); // 非推奨!
fgets(str, size, stdin); // 安全
// if文
if (x > 0) {
// 処理
} else if (x == 0) {
// 処理
} else {
// 処理
}
// for文
for (int i = 0; i < 10; i++) {
// 処理
}
// while文
while (condition) {
// 処理
}
// 配列
int arr[5] = {1, 2, 3, 4, 5};
printf("%d", arr[0]); // 1
// ポインタ
int *ptr = &x; // xのアドレス
*ptr = 10; // xに10を代入
// 配列とポインタ
arr[i] == *(arr + i) // 同じ
#include <string.h>
strlen(str); // 長さ
strcpy(dst, src); // コピー
strcat(dst, src); // 連結
strcmp(s1, s2); // 比較
strncpy(dst, src, n); // 安全版
// 基本演算
x & y // AND
x | y // OR
x ^ y // XOR
~x // NOT
x << n // 左シフト(×2^n)
x >> n // 右シフト(÷2^n)
// ビットマスク
x |= (1 << n); // nビット目をON
x &= ~(1 << n); // nビット目をOFF
x ^= (1 << n); // nビット目を反転
American Standard Code for Information Interchange。英数字や記号を数値で表現する文字コード。A=65, a=97など。
Central Processing Unit (中央演算処理装置)。コンピュータの「脳」。プログラムの命令を実行する。
Graphical User Interface。マウスやタッチで操作するグラフィカルな画面。Windowsの普通の画面。
Random Access Memory。主記憶装置。作業机に例えられる。電源を切ると内容が消える。
メモリ上の場所を示す「番地」。ポインタはアドレスを記憶する変数。
問題を解決するための手順や方法。料理のレシピのようなもの。
複数バイトのデータをメモリに並べる順序。ビッグエンディアンとリトルエンディアンがある。
ソースコード(C言語など)を機械語(実行ファイル)に翻訳するプログラム。gccなど。
処理をまとめて部品化したもの。引数を受け取り、戻り値を返す。
メモリ領域の一つ。関数のローカル変数が置かれる。後入れ先出し(LIFO)構造。
不正なメモリアクセスによるエラー。ポインタのバグでよく発生する。
配列の範囲を超えてデータを書き込む脆弱性。セキュリティ攻撃に悪用される。
malloc()で動的に確保するメモリ領域。使い終わったらfree()で解放する必要がある。
メモリのアドレス(番地)を記憶する変数。C言語最大の難関だが、最も強力な機能。
malloc()で確保したメモリをfree()し忘れること。メモリが枯渇してPCが重くなる。
CPU内部の超高速な記憶領域。組み込みではハードウェアの設定用レジスタもある。
バージョン管理システム。コードの変更履歴を管理できる。高専では必須スキル。
Cのデバッガ。プログラムを一時停止して変数の中身を見られる。
メモリリーク検出ツール。malloc/freeの間違いを見つけてくれる。
寿司打、e-typingなど。ブラインドタッチは入学前に必ずマスターすべき!