可以用typedef声明新的类型名来代替已有的类型名。
实例1:
代码语言:javascript复制#include<stdio.h>
#include<iostream>
typedef struct {
char* name;
int age;
}STUDENT;
int main()
{
STUDENT stu;
stu.name = "tom";
stu.age = 12;
printf("name=%s,age=%dn", stu.name, stu.age);
system("pause");
return 0;
}
实例2:
代码语言:javascript复制#include<stdio.h>
#include<iostream>
typedef int NUM[100];
int main()
{
NUM num = {0};
printf("%dn", sizeof(num));
system("pause");
return 0;
}
输出:
正好是400个字节 ,因为一个整型占4个字节,共100个元素。
实例3:
代码语言:javascript复制#include<stdio.h>
#include<iostream>
typedef char* STRING;
int main()
{
STRING str = "hello";
printf("%sn", str);
system("pause");
return 0;
}
输出:
我们就可以自己定义string类型了。
实例4:
代码语言:javascript复制#include<stdio.h>
#include<iostream>
typedef int (*POINTER)(int,int);
int add(int a, int b) {
return a b;
}
int main()
{
int add(int, int);
POINTER p;
p = add;
int res = p(2, 3);
printf("%dn", res);
system("pause");
return 0;
}
输出:
这样我们也可以定义函数指针。