【C言語】データ型、ストレージクラス

参照


データの種類

整数型

タイプ サイズ 範囲
チャー 1バイト -128~127
符号なし文字 1バイト 0~255
整数 2/4バイト -32768~32767 / − 2 31 -2^{31}231 ~2 31 − 1 2^{31}-12311
符号なし整数 2/4バイト 0~65535 / 0 00 ~2 32 − 1 2^{32}-12321
短い 2バイト -32768~32767
署名なしの短い 2バイト 0~65535
長いです 4/8バイト − 2 31 -2^{31}231 ~2 31 − 1 2^{31}-12311 /− 2 63 -2^{63}263 ~2 63 − 1 2^{63}-12631
符号なしロング 4/8バイト 0 00 ~2 32 − 1 2^{32}-12321 /0 00 ~2 64 − 1 2^{64}-12641
ロングロング 8バイト − 2 63 -2^{63}263 ~2 63 − 1 2^{63}-12631
  • 16 ビット オペレーティング システム: int は 2 バイト、long は 4 バイトを占有します。
  • 32 ビット オペレーティング システム: int は 4 バイト、long は 4 バイトを占有します。
  • 64 ビット オペレーティング システム: int は 4 バイト、long は 8 バイトを占有します。

浮動小数点型

タイプ サイズ 範囲 精度
浮く 4バイト 1.2E-38~3.4E+38 6 有効ビット
ダブル 8バイト 2.3E-308~1.7E+308 15 有効ビット
ロングダブル 16バイト 3.4E-4932~1.1E+4932 19 有効ビット

組込共通交換

typedef char int8;
typedef volatile char vint8;
typedef unsigned char uint8;
typedef volatile unsigned char vuint8;
typedef int int16;
typedef unsigned short uint16;
typedef long int32;
typedef unsigned long uint32;

ストレージ クラス

  • auto: デフォルトのストレージ クラス、関数内でのみ使用可能、ローカル変数のみ変更可能
    int year;
    auto int month;   // 两个相同存储类得变量
    
  • register: RAM ではなくレジスタに格納されるローカル変数、最大サイズ = レジスタ サイズ、&演算子は使用できません (メモリ ロケーションなし)
    register int day;
    
    • 高速アクセスが必要な変数 (カウンター) にのみ使用; レジスター内にある場合があります (ハードウェアによって異なります)
  • static: ファイル内でスコープがファイルに限定されている場合、プログラムのライフ サイクル中にローカル変数の存在を維持します。
    static int hour;
    
  • extern: 参照を提供します。変数名は以前に定義された保存場所を指します
    extern int minute;
    

オペレーター

  • ^: または、似ていない=1
  • &: 変数アドレスを返す
  • *: 変数を指す
  • ?:: 条件式
    (a==10)?20:30
    

優先順位


関数

  • 値による呼び出し: 実際の値は関数の仮パラメーターに割り当てられ、仮パラメーターの変更は実際のパラメーターに影響しません
  • 参照による呼び出し: 仮パラメーターへのポインターを渡します。この操作は、実パラメーター自体の操作と同等です。

範囲

  • グローバル変数はローカル変数と同じ名前を持ち、ローカル変数は関数で最初に使用されます
    • 仮パラメータも関数のローカル変数として扱われます

おすすめ

転載: blog.csdn.net/weixin_46143152/article/details/126653280