當(dāng)前位置:
首頁 >
【C 语言】数据类型本质 ( 数据类型别名 | typedef 关键字 | 为复杂数据类型设置别名 | 为简单数据类型设置别名 )
發(fā)布時間:2025/6/17
61
豆豆
生活随笔
收集整理的這篇文章主要介紹了
【C 语言】数据类型本质 ( 数据类型别名 | typedef 关键字 | 为复杂数据类型设置别名 | 为简单数据类型设置别名 )
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 一、typedef 關(guān)鍵字
- 1、為復(fù)雜數(shù)據(jù)類型設(shè)置別名
- 2、為簡單數(shù)據(jù)類型設(shè)置別名
- 二、代碼示例
一、typedef 關(guān)鍵字
1、為復(fù)雜數(shù)據(jù)類型設(shè)置別名
使用 typedef 關(guān)鍵字為 復(fù)雜數(shù)據(jù)類型 定義別名 : 結(jié)構(gòu)體前面加上 typedef 關(guān)鍵字 , 結(jié)構(gòu)體類型聲明最后帶上 數(shù)據(jù)類型別名 ;
注意 : 定義的別名 可以與 結(jié)構(gòu)體類型名稱 相同 ;
/** 定義結(jié)構(gòu)體, 并且為其定義別名* 別名可以與結(jié)構(gòu)體的名字相同* 將 struct student2 數(shù)據(jù)類型重命名為 student2 類型* 可以直接使用 student2 作為數(shù)據(jù)類型 ,* 不比帶上 struct 關(guān)鍵字*/ typedef struct student2 {char name[20]; // 名字int age; // 年齡 }student2;使用復(fù)雜類型定義別名 , 在定義該結(jié)構(gòu)體變量時 , 可以 省略 struct 關(guān)鍵字 ;
// 使用類型別名作為結(jié)構(gòu)體的變量類型// 省略 struct 關(guān)鍵字student2 s2;如果沒有 typedef 定義別名 , 定義類型時 , 必須帶 struct 關(guān)鍵字 , 如下 :
struct student2 s2;2、為簡單數(shù)據(jù)類型設(shè)置別名
使用 typedef 關(guān)鍵字 , 為簡單類型進(jìn)行重命名 , 重命名的 數(shù)據(jù)類型的別名 , 使用方式 與 簡單類型 一模一樣 ;
/** 對簡單類型進(jìn)行重命名* 將 int 數(shù)據(jù)類型重命名為 u_32 類型*/ typedef int u_32;二、代碼示例
代碼示例 :
#include <stdio.h>// 學(xué)生類型結(jié)構(gòu)體 struct student {char name[20]; // 名字int age; // 年齡 };/** 定義結(jié)構(gòu)體, 并且為其定義別名* 別名可以與結(jié)構(gòu)體的名字相同* 將 struct student2 數(shù)據(jù)類型重命名為 student2 類型* 可以直接使用 student2 作為數(shù)據(jù)類型 ,* 不比帶上 struct 關(guān)鍵字*/ typedef struct student2 {char name[20]; // 名字int age; // 年齡 }student2;/** 對簡單類型進(jìn)行重命名* 將 int 數(shù)據(jù)類型重命名為 u_32 類型*/ typedef int u_32;/** 函數(shù)入口*/ int main(int argc, char **args) {// 聲明結(jié)構(gòu)體變量struct student s;// 使用類型別名作為結(jié)構(gòu)體的變量類型// 省略 struct 關(guān)鍵字student2 s2;printf("sizeof(struct student)=%d, sizeof(student2)=%d, sizeof(u_32)=%d\n",sizeof(struct student),sizeof(student2),sizeof(u_32));return 0; }執(zhí)行結(jié)果 :
sizeof(struct student)=24, sizeof(student2)=24, sizeof(u_32)=4總結(jié)
以上是生活随笔為你收集整理的【C 语言】数据类型本质 ( 数据类型别名 | typedef 关键字 | 为复杂数据类型设置别名 | 为简单数据类型设置别名 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【C 语言】数据类型本质 ( sizeo
- 下一篇: 【C 语言】变量本质 ( 变量概念 |