您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
059第十章 结构体与共用体07(新版) typedef
发布时间:2021-05-08 14:01:16编辑:雪饮阅读()
用typedef定义类型
用typedef声明新的类型名来代替已有的类型名
實例如:
#include <stdio.h>
typedef int INTEGER;
void main()
{
INTEGER i = 1;
int j = 2;
printf("%d, %d\n\n", i, j);
}
編譯並運行結果:
D:\cproject>gcc main.c -o m
D:\cproject>m.exe
1, 2
用typedef也可以聲明結構
相當於對結構進行重命名
實例如:
#include <stdio.h>
typedef struct
{
int month;
int day;
int year;
}DATE;
void main()
{
DATE date_one;
date_one.month = 12;
date_one.day = 31;
date_one.year = 2012;
printf("%d - %d - %d \n", date_one.year, date_one.month, date_one.day);
}
編譯運行結果如:
D:\cproject>gcc main.c -o m
D:\cproject>m.exe
2012 - 12 – 31
用typedef也可以對數組進行聲明
声明NUM为整型数组类型,實例如:
#include <stdio.h>
typedef int NUM[100];
void main()
{
NUM num = {0};
printf("%d\n\n", sizeof(num));
}
編譯並運行結果如:
D:\cproject>gcc main.c -o m
D:\cproject>m.exe
400
声明STRING为字符指针类型
指針類型也可以被typedef進行別名
實例如:
#include <stdio.h>
typedef char* P;
void main()
{
P p1;
p1 = "I love xkws.com";
printf("%s\n", p1);
}
編譯運行結果如:
D:\cproject>gcc main.c -o m
D:\cproject>m.exe
I love xkws.com
声明 POINTER 为指向函数的指针类型
用typedef定義一個可以接收函數名的類型實例如:
#include <stdio.h>
typedef void (*P)();
void fun()
{
printf("I love xkws.com!\n");
}
void main()
{
P p1;
char a[10] = "xkws.com!";
printf("%d %d %p %p\n", a,&a,a,&a);
p1 = fun;
(p1)();
}
編譯並運行結果如:
关键字词:typedef,指針