広告スペース

C言語チートシート(早見表)

よく使う書式・演算子・型を一覧表でまとめました。ブックマーク推奨。

printf 書式指定子

書式説明使用例出力例
%dint10進整数printf("%d", 42)42
%ldlonglong整数printf("%ld", 100000L)100000
%uunsigned符号なし整数printf("%u", 42)42
%fdouble小数(デフォルト6桁)printf("%f", 3.14)3.140000
%.2fdouble小数点以下2桁printf("%.2f", 3.14)3.14
%edouble指数表記printf("%e", 0.001)1.000000e-03
%cchar1文字printf("%c", 'A')A
%schar*文字列printf("%s", "Hi")Hi
%pvoid*アドレス(16進)printf("%p", &x)0x7fff...
%xunsigned16進数(小文字)printf("%x", 255)ff
%Xunsigned16進数(大文字)printf("%X", 255)FF
%ounsigned8進数printf("%o", 8)10
%5dint5桁右寄せprintf("%5d", 42)   42
%-5dint5桁左寄せprintf("%-5d", 42)42   
%05dint0埋め5桁printf("%05d", 42)00042
%%-%文字そのものprintf("100%%")100%

scanf 書式指定子

書式注意
%dint *scanf("%d", &x) ← &を忘れない
%ldlong *long型の読み込み
%ffloat *floatの読み込み(doubleではない!)
%lfdouble *doubleは%lf(printfでは%fでOK)
%cchar *1文字読み込み(空白も読む)
%schar[]文字列(空白まで)。&不要
最重要注意: scanf で double を読むときは %lf。printf は %f でOK。この違いを間違えるバグは非常に多い。

エスケープシーケンス

記法意味用途
\n改行最もよく使う
\tタブ桁揃え
\\\(バックスラッシュ)パス表示等
\""(ダブルクォート)文字列内に"を入れる
\''(シングルクォート)文字リテラル
\0ヌル文字文字列の終端
\aベル(警告音)ビープ音

データ型とサイズ

サイズ(典型)範囲printfscanf
char1バイト-128〜127%c%c
unsigned char1バイト0〜255%u%u
short2バイト-32768〜32767%hd%hd
int4バイト約±21億%d%d
unsigned int4バイト0〜約42億%u%u
long4 or 8バイト環境依存%ld%ld
long long8バイト約±922京%lld%lld
float4バイト約7桁精度%f%f
double8バイト約15桁精度%f%lf
sizeof(型) で実際のバイト数を確認できます。サイズは環境(32bit/64bit)によって変わることがあります。

演算子の優先順位(高い順)

優先度演算子説明結合方向
1(最高)() [] -> .括弧・配列・メンバアクセス左→右
2! ~ ++ -- + - * & (cast) sizeof単項演算子(前置)右→左
3* / %乗除・剰余左→右
4+ -加減左→右
5<< >>ビットシフト左→右
6< <= > >=大小比較左→右
7== !=等値比較左→右
8&ビットAND左→右
9^ビットXOR左→右
10|ビットOR左→右
11&&論理AND左→右
12||論理OR左→右
13?:三項演算子右→左
14= += -= *= /= ...代入右→左
15(最低),カンマ左→右
迷ったらカッコ () を使う。 優先順位を暗記する必要はありません。明示的にカッコで囲む方が安全で読みやすいです。

よく使う標準ライブラリ関数

ヘッダ関数機能
stdio.hprintf, scanf, fprintf, fscanf入出力
stdio.hfopen, fclose, fgets, fputsファイル操作
stdlib.hmalloc, calloc, free, realloc動的メモリ
stdlib.hrand, srand, atoi, atof, exit乱数・変換・終了
string.hstrlen, strcpy, strcat, strcmp文字列操作
string.hmemcpy, memset, strstr, strchrメモリ・検索
math.hsqrt, pow, abs, sin, cos, log数学関数
ctype.hisalpha, isdigit, toupper, tolower文字判定・変換
time.htime, clock, difftime時間
limits.hINT_MAX, INT_MIN, CHAR_MAX型の上下限

手元に置いておきたいリファレンス

チートシートと合わせて書籍を手元に置くと学習効率が上がります

📘
苦しんで覚えるC言語
MMGames 著
初心者向けの定番入門書。
Amazonで見る
📗
新・明解C言語 入門編
柴田望洋 著
図解が豊富で演習問題も充実。
Amazonで見る
📙
プログラミング言語C 第2版
B.W.カーニハン, D.M.リッチー 著
通称K&R。C言語の原典。
Amazonで見る

※ 上記リンクはアフィリエイトリンクです。購入によりサイト運営を支援いただけます。

この記事をシェア
X(Twitter)でシェア Facebookでシェア LINEで送る はてブ