C言語備忘録

C言語備忘録として書き留めます。


構造体の使い方

#include

typedef struct{
  char name[20]; //名前
  int age; //年齢
}MEMBER;

int main(void){
  MEMBER member = {"太郎",23};
  printf("name = %s age = %d",member.name,member.age);
  return 0;
}


条件演算子



a ? b : c aが非0であれば、bを評価した値、0であればcを評価した値になる


変換指定



0フラグ
余白が0に変換されて表示される

                            • -

51で%05dの場合
===============
□□□51(□は半角スぺース)

00051
===============


最小フィールド幅

実際の数値が最小表示数に満たない時はスペースが、
数値が指定された値を超える桁数の時は、
その数値が表示するのに必要な桁数になる。

                            • -

21で%4dの場合
===============
□□21(□は半角スぺース)
===============

                            • -

21で%-4dの場合
===============
21□□(□は半角スぺース)
===============

                            • -

21で%1dの場合
===============
21
===============


精度

表示する最小の桁数を指定する。
省略した場合に、整数の場合は1、浮動小数点数の場合は6であるとみなされる。

                            • -

13.5で%.3fの場合
===============
13.500
===============

                            • -

13.5で%5.3f
===============
13.500
===============

                            • -

123で%.4dの場合
===============
0123
===============


変換指定数

d ・・・ int型の整数を10進数で表示する。
f ・・・ double型の浮動小数点数を10進数で表示する


文字列の数字文字かどうかif文

if (str[i] >= '0' && str[i] <= '9') {
  printf("数字文字です。\n");
}


ポインタの文字列コピー

while (*str1++ = *str2++)
  ;


printfを複数行で書く

/* 改行時に『"』で囲む */
printf("あ\n"
"い\n"
"う\n"
"え\n"
"お\n");
結果
* ------ *





* ------ *