C言語基礎4

### 整数定数
数値や文字列を直接表現したものを定数(リテラル)と言う。
– 整数定数
 L 8進定数 0~8
 L 10進定数 0~9
 L 16進定数 0〜9, A~F ex.0x1a, 0XAB03
 L unsigned型定数 uまたはU ex.12800U
 L long型定数 lまたはL ex.0L

### 浮動小数点型定数
小数点形式と指数形式がある。デフォルトはdoubleで、接尾語を付けることでfloat型やlong double型になる。
– 整数定数
 L 小数点形式 double型 12.345
 L 指数形式 eまたはE 3.456E2(=345.6), 6.78e-3(=0.00678)
 L float型 fまたはFを末尾に付ける 12.34F
 L long, double型 lまたはLを付ける 100.23L 5.67e-21

int main(void){
	int n8, n10, n16;
	double f1, f2;

	n8 = 0100;
	n10 = 100;
	n16 = 0x100;
	f1 = 1.234;
	f2 = 5.678e2;

	printf("n8=%d\n", n8);
	printf("n10=%d\n", n10);
	printf("n16=%d\n", n16);
	printf("f1=%f\n", f1);
	printf("f2=%f\n", f2);
	return 0;
}

### 文字定数と文字列リテラル
文字定数はそれぞれの文字が持っている文字コードを表現するもの
int c;
c = ‘A’;
c = 65 ….Aに対応する文字コード

二重引用符合で囲ったものを文字列リテラルと言う
“ABCDEF”
“C language”

### その他の定数機能
¥a : alert
¥b : back space
¥f : form feed(改ページ)
¥n : new line
¥r : carriage return(復帰)
¥t : horizontal tab(水平タブ)
¥v : vertical tab(垂直タブ)
¥’ : 文字定数対策
¥” : 文字列定数対策
¥? : 三連文字対策
¥ooo : 8進数 octal
¥xhh : 16進数 hexadecimal

単一文字コードで用いる時は’¥n’と囲むが、文字列リテラルに埋め込む時は、”AAAA¥tBBBB¥n”とそのまま書く
”’ … エラー
‘¥” … 正常

### 記号定数
任意のデータを意味ある名前で扱うようにするための記号定数
e.g.
#define MAXDATA 3715

### const付定数
宣言の時に値を設定し、それ以降は値の変更ができない
e.g.
const int a = 10;

8進数が2進数の3乗で、電子回路の処理上、都合がいいのはわかるが、8進数をプログラム処理場で使うイメージがわかないな。