美文网首页
结构体、枚举

结构体、枚举

作者: 买买提不撸串 | 来源:发表于2017-12-28 14:04 被阅读0次

    //struct 后面那个要不要都行

    typedef struct {//typedef struct后面也可以加个名字 

        __unsafe_unretained NSString*name;

        int age;

        int sex;

        char depment;

        char height;

        char weight;

    }Person;

    typedef enum {//typedef enum 后面也可以加名字

        spring,

        summer,

        autumn,

        winter

    }Season;

    @interface ViewController : UIViewController

    @property(nonatomic,assign)Season season;

    @property(nonatomic,assign)Person per;

    /*结构体也是一种数据类型,和int,NSString一样,只不过结构体可以自己定义是什么数据类型,一般有三种方法定义结构体

    struct 结构体名字 {

    类型 名字;

    类型 名字;

    类型 名字;

    ...

    };

    */

    #pragma mark 方法一

    -(void)firstStruct{

        struct student{

            char *namePinYin;

            int  age;

            __unsafe_unretained  NSString*name;//在结构体中定义字符串需这样

        };

        //此时student就代表一种数据类型,然后可以声明这种类型的变量  stu1

        struct  student stu1={"zqk",27,@"郑乾坤"};

        struct student stu2;

        stu2.namePinYin="zhangsan";

        stu2.age=26;

        stu2.name=@"张三";

        NSLog(@"%s %i %@",stu1.namePinYin,stu1.age,stu1.name);

    }

    #pragma mark 方法二

    -(void)secondStruct{

        struct {

            char *namePinYin;

            int age;

            __unsafe_unretained NSString*name;

        }stu;

        stu.namePinYin="lisi";

        stu.age=25;

        stu.name=@"李四";

    }

    #pragma mark 方法三

    -(void)thirdStruct{

        //typedef  是给已有数据类型起个别名;

        typedef struct student {

            char *namePinYin;

            int age;

            __unsafe_unretained NSString*name;

        }defStuden;

        struct student stu;

        stu.namePinYin="wangwu";

        defStuden stu2;

        stu2.namePinYin="wang";

    }

    #pragma mark 枚举

    -(void)EnumText{

        _season=winter;

        switch (_season) {

            case spring:

                NSLog(@"春");

                break;

            case summer:

                NSLog(@"夏");

                break;

            case autumn:

                NSLog(@"秋");

                break;

            case winter:

                NSLog(@"冬");

                break;

            default:

                break;

        }

    }

    相关文章

      网友评论

          本文标题:结构体、枚举

          本文链接:https://www.haomeiwen.com/subject/wgtvgxtx.html