目錄
- 一.typedef 簡介
- 二.typedef 實戰
- 1.typedef 定義基本資料變數
- 2.typedef 定義結構體
- A.常規定義結構體
- B.typedef 定義結構體
- C.結構體使用 typedef 和不使用 typedef 區別
- 3.typedef 定義函式指標
- 三.猜你喜歡
零基礎 C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎入門
一.typedef 簡介
C 語言 typedef 是為現有的型別起一個別名,使使用起來更加的方便,注意:它并沒有產生新的型別;
舉個例子:假如你得名字叫胡歌,利用 typedef 給你取一個別名叫老胡,那么胡歌是你,老胡也是你,兩者都一樣,示例代碼如下:
typedef 胡歌 老胡;//注意typedef末尾有分號結束
以上代碼得意思就是:為胡歌取一個別名叫老胡,老胡和胡歌其實就是同一個人;
二.typedef 實戰
1.typedef 定義基本資料變數
在 C 語言中,防止由于各種平臺和編譯器的不同,而產生的型別位元組數差異,方便移植,其實經常用到 typedef ,例如:
/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C語言 typedef
//@Time:2021/06/25 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程式人生的精彩需要堅持不懈地積累!
/******************************************************************************************/
typedef unsigned char boolean; /* Boolean value type. */
typedef unsigned long int uint32; /* Unsigned 32 bit value */
typedef unsigned short uint16; /* Unsigned 16 bit value */
typedef unsigned char uint8; /* Unsigned 8 bit value */
typedef signed long int int32; /* Signed 32 bit value */
typedef signed short int16; /* Signed 16 bit value */
typedef signed char int8; /* Signed 8 bit value */
然后我們可以自己測驗以下:
typedef int myInt; //為int資料型別取一個別名
//以下兩句代碼是一樣的
int value = https://www.cnblogs.com/shuopython/p/5; //定義一個整型變數value ,并將它賦值為5
myInt value = 5; //定義一個整型變數value ,并將它賦值為5
2.typedef 定義結構體
A.常規定義結構體
struct student{
char cName[20]; //姓名
int iNumber; //電話號碼
struct student *next;//指向下一個節點
};
struct student *head; //定義結構體變數
B.typedef 定義結構體
typedef struct student{
char cName[20]; //姓名
int iNumber; //電話號碼
struct student *next;//指向下一個節點
}*LinkList;
//LinkList* 等價 struct student
LinkList head; //定義結構體變數
C.結構體使用 typedef 和不使用 typedef 區別
不用 typedef,定義變數時需要加上 struct,比較麻煩;
struct student *head; //定義結構體變數
使用 typedef,定義變數時不需要加上 struct,比較簡單;
LinkList head; //定義結構體變數
3.typedef 定義函式指標
/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C語言 typedef
//@Time:2021/06/25 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程式人生的精彩需要堅持不懈地積累!
/******************************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <string>
typedef int (*callBackFunc)(char* name);
int callback(char* name)
{
printf("我名字是%s....\n",name);
return 1;
}
int main()
{
callBackFunc ff = callback;
ff((char*)"胡歌");
ff((char*)"劉亦菲");
return 0;
}
/*
輸出:
我名字是胡歌....
我名字是劉亦菲....
*/
關于函式指標詳細介紹請參考:函式指標;
三.猜你喜歡
- C 語言邏輯運算子
- C 語言三目運算子
- C 語言逗號運算式
- C 語言 sizeof 和 strlen 函式區別
- C 語言 strcpy 和 strcpy_s 函式區別
- C 語言 memcpy 和 memcpy_s 區別
- C 語言 陣列定義和使用
- C 語言 陣列遍歷
- C 語言 陣列下標越界
- C 語言 陣列記憶體溢位
- C 語言 陣列下標越界和記憶體溢位區別
- C 語言 二維陣列定義和使用
- C 語言 二維陣列行數和列數計算
- C 語言 指標宣告和定義
- C 語言 指標 p++ / p–
- C 語言 p++/§++/_(p++)/_p++
- C 語言 使用指標遍歷陣列
- C 語言 指標和陣列區別
- C 語言 陣列指標
- C 語言 指標陣列
- C 語言 指標陣列和陣列指標區別
- C 語言 空指標 NULL
- C 語言 void 指標
- C 語言 野指標
- C 語言 函式值傳遞和址傳遞
- C 語言 函式預設引數
- C 語言 函式不定長引數
- C 語言 函式指標
- C 語言 指標函式
- C 語言 回呼函式 callback
- C 語言 typedef
未經允許不得轉載:猿說編程 ? C 語言 typedef
本文由博客 - 猿說編程 猿說編程 發布!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/296997.html
標籤:C
