C语言 typedef修饰符

来源:互联网 发布:象棋拆棋软件 编辑:程序博客网 时间:2024/06/05 15:36
//使用 typedef 来为用户自定义的数据类型取一个新的名字。#include<stdio.h>#include<string.h>typedef struct Person{    int age;    char name[20];    char sex[10];}Persons;//然后使用这个Persons新的数据类型来直接定义结构变量//typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。struct Man{    int age;    char name[20];    char sex[10];};void printfPersons(Persons * person){    printf("name=%s\n",person->name);    printf("name=%s\n",person->sex);    printf("name=%d\n",person->age);}void printfMan(struct Man* man){    printf("name=%s\n",man->name);    printf("name=%s\n",man->sex);    printf("name=%d\n",man->age);}void main(){    //    Persons persons;//用typedef定义的类型后可以直接使用,不需要再在前面加struct,比较直观简洁//    用在旧的C代码中,帮助struct。以前的代码中,//    声明struct新对象时,必须要带上struct,即形式为: struct 结构名对象名,如://在C中定义一个结构体类型要用typedef://    typedef struct Student//    {//    int a;//    }Stu;//    于是在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student stu1;来声明)//    这里的Stu实际上就是struct Student的别名。Stu==struct Student    struct Man man;    strcpy(persons.name,"小蓝");    strcpy(persons.sex,"男");    persons.age=19;    printfPersons(&persons);    printf("--------------------------------------------\n");    strcpy(man.name,"小明");    strcpy(man.sex,"男");    man.age=19;    printfPersons(&man);}

结果:

name=小蓝name=男name=19--------------------------------------------name=小明name=男name=19