Object C学习笔记20-结构体
2014-03-26 22:16 贺臣 阅读(2525) 评论(1) 编辑 收藏 举报在学习Object C中的过程中,关于struct的资料貌似非常少,查阅了C方面的资料总结了一些学习心得!
一. 定义结构
结构体是一种数据类型的组合和数据抽象。结构体的定义语法如下:
struct 结构体名称
{
类型 变量名;
类型 变量名;
}
实例代码如下:

struct student { char* name; enum sex sex; int age; };
上面代码定义了一个结构体student,其中有三个变量name,sex,age ,其中sex是一个枚举。student是一个标识符,也称为tag.
二. 定义结构变量
结构变量定义代码如下:

struct student { char* name; enum sex sex; int age; }stu1,stu2;
以上定义了两个student类型的结构变量stu1,stu2;
或者使用如下方式定义变量
struct student a={"aaa",34}; struct student b={"cccc",45};
三. 如何在类中使用结构
先定义一个类Person,其中有两个属性为枚举和结构体

enum sex{ male=0, female=1 }; struct student { char* name; int age; }; #import <Foundation/Foundation.h> @interface Person : NSObject{ enum sex sex; struct student stu; } @property (nonatomic,assign) enum sex sex; @property (nonatomic,assign) struct student stu; -(void) write; @end --------------------------------------------------------- #import "Person.h" @implementation Person @synthesize sex; @synthesize stu; -(void) write{ NSLog(@"%d",sex); NSLog(@"%d",stu.age); NSLog(@"%s",stu.name); } @end
测试代码如下

Person *person=[[Person alloc] init]; enum sex sex=female; struct student stu={"cnblogs",12}; person.sex=sex; person.stu=stu; [person write];
输出结果如下
2014-03-26 22:13:10.112 ObjectEnum[524:303] 1 2014-03-26 22:13:10.115 ObjectEnum[524:303] 12 2014-03-26 22:13:10.116 ObjectEnum[524:303] cnblogs
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架