目次
1. キーワード
1.1 typedef (型の再定義)
次のコードを見てください: typedef は型の名前を変更できます。不適切な例を挙げると、int は ZX としてカスタマイズできるため、整数型には 2 つの名前 (1 つは int、もう 1 つは ZX) があり、整数変数を宣言できます。
この使用法は主に複雑な変数で使用されます。
typedef struct Node {
int data;
int price
}Node;
int main()
{
//重定义后,我们声明变量的工作量就变小了!
struct Node b = { 11,15 };
Node a = { 11,55 };
}
1.2 静的
static は変更可能: ローカル変数、グローバル変数、関数
1.2.1 ローカル変数の変更
まず、単純なコードの実行結果を見てください。
ローカル変数 a を静的に変更すると、変数の格納タイプが変更されます。ローカル変数は元々スタック領域に配置され、static で変更された後はメモリの静的領域に格納されるようになりましたが、格納形式の変更によりライフサイクルが長くなりました。ただし、スコープには影響しません。 a は関数内でのみ使用できます。
1.2.2 グローバル変数の変更
グローバル変数には外部リンク属性があり、グローバル変数を静的に変更すると、外部リンク属性は内部リンク属性になります。現時点では、グローバル変数は、それが配置されている .c ファイル内でのみ使用でき、他のファイルをリンクして使用することはできません。
1.2.3 変更された機能
この関数には外部リンク属性があります。関数が静的に変更されると、外部リンク属性は内部リンク属性に変更されるため、この関数は、この関数が配置されている .c ファイルおよび他の .c ファイルでのみ使用できるようになります。リンクできません。
2. オペレーター
2.1 条件演算子
条件演算子は三項演算子とも呼ばれます: exp1?exp2:exp3
exp1 式の結果が true の場合は exp2 式の値を出力し、それ以外の場合は exp3 式の値を出力します。
三項演算子をうまく使用すると、コード ロジックを簡素化できます。
2.2 カンマ式
(exp1、exp2、exp3、exp4) は左から右に評価され、結果は最後の式の結果になります。
3. ポインタ
ポインタはアドレスであり、アドレスはポインタです
ポインターの最も基本的な使用法は次のとおりです。
4. 構造
複雑なデータ型を変更する場合は、人の名前や年齢を記述するなどの構造の使用を検討できます。
注: *pa は a と同等です。