OC 结构体
void test() {
// 这个机构只能在函数内部使用
// 定义一个名为Student的结构体类型
struct Student {
int age; // 年龄
char *name; // 姓名
float height; // 身高
};
// 定义一个结构体变量
struct Student stu = {, "mj", 1.8f};
// 下面这行的初始化是错误的
// stu = {27, "mj", 18.0f};
stu.age = ;
printf("age=%d\n", stu.age);
printf("name=%s\n", stu.name);
printf("height=%.1f\n", stu.height);
}
void test1() {
struct Student {
int age; // 年龄
char *name; // 姓名
float height; // 身高
} stu = {, "mj", 1.8f};
struct Student stu1 = {, "lmj", 1.9f};
struct {
int age; // 年龄
char *name; // 姓名
float height; // 身高
} stu2 = {, "mj", 1.8f};
struct {
int age; // 年龄
char *name; // 姓名
float height; // 身高
} stu3 = {, "mj", 1.8f};
}
void test2() {
// 定义一个Date结构体
struct Date {
int year;
int month;
int day;
};
// 定义一个学生结构体
struct Student {
int age;
struct Date birthday;
};
struct Student stu = {, {, , }};
printf("age=%d\n", stu.age);
printf("year=%d\n", stu.birthday.year);
printf("month=%d\n", stu.birthday.month);
printf("day=%d\n", stu.birthday.day);
}
void test3() {
// struct Student {
// int age; // 年龄
// char *name; // 姓名
// float height; // 身高
// };
// struct Student a[2] = {{27, "mj", 1.8f}, {28, "lmj", 1.9f}};
struct Student {
int age; // 年龄
char *name; // 姓名
float height; // 身高
} a[] = {{, "mj", 1.8f}, {, "lmj", 1.9f}};
struct Student a2[];
}
struct Person {
int age;
};
void change(struct Person p) {
p.age = ;
}
// 结构体作为函数参数
void test4() {
struct Person person = {};
change(person);
printf("age=%d", person.age);
}
// 指向结构体的指针
void tets5() {
// 定义一个结构体变量
struct Person person = {};
// 定义一个指向结构体的指针
struct Person *p;
// 让指针p指向结构体person
p = &person;
printf("age=%d\n", person.age);
printf("age=%d\n", (*p).age);
printf("age=%d\n", p->age);
}
int main(int argc, const char * argv[])
{
tets5();
return ;
}
OC 结构体的更多相关文章
- 黑马程序员——Foundation中的OC结构体
<span style="font-size:14px">------<a target="_blank" href="http:/ ...
- OC中结构体作为对象属性
在OC中结构体有时候也作为对象的属性 类的定义 #import <Foundation/Foundation.h> typedef struct{ int year; int month; ...
- 关于OC中直接打印结构体,点(CGRect,CGSize,CGPoint,UIOffset)等数据类型
关于OC直接打印结构体,点(CGRect,CGSize,CGPoint,UIOffset)等数据类型,我们完全可以把其转换为OC对象来进项打印调试,而不必对结构体中的成员变量进行打印.就好比我们可以使 ...
- 黑马程序员——OC语言Foundation框架 结构体
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)结构体 NSRange(location length) NSPoi ...
- 站在OC的基础上快速理解Swift的类与结构体
阅读此文章前,您已经有一定的Object-C语法基础了!) 2014年,Apple推出了Swift,最近开始应用到实际的项目中. 首先我发现在编写Swift代码的时候,经常会遇到Xcode不能提示,卡 ...
- OC中常见的结构体,以及NSNumber、NSValue、NSDate的使用
常见的结构体 NSPoint和CGPoint NSSize和CGSize NSRect 和 CGRect NSPoint和CGPoint的使用 NSPoint和CGPoint是同义的 typedef ...
- OC Foundation框架—结构体
一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框架中的数据类型,那么包含它的主头文 ...
- OC对象里面包含的结构体类型的属性,不能对该结构体属性的成员单个进行修改
OC对象里面包含的结构体类型的属性,不能对该结构体属性的成员单个进行修改,需要对OC对象的结构体属性整体赋值. 关于网上很多博客写着“结构体类型里面的某个属性如果想要修改是不允许单个修改的” 之解释: ...
- oc温习七:结构体与枚举
结构体和枚举都是一种存储复杂的数据.结构体是用户自定义的一种类型,不同类型的集合. 1.结构体的创建及使用 定义结构体类型 struct MyDate { int year; int month; i ...
随机推荐
- Tomcat疑难杂症解决记录
1. startup.bat闪退 cmd中运行startup.bat报错: The JRE_HOME environment variable is not defined correctly Thi ...
- iView 初识
iView和element-UI在table这块有有相似之处,但是与layui有不同的地方 在data数据这里有明显的不同,在iView中data数组下每个元素对象对应一行的数据:而layui中,da ...
- 切换myEclipse工作空间后设置,myEclipse添加注释/设置豆沙背景颜色/调节字体大小
一.添加注释 操作位置: 注释规范 Files/** * @文件名称: ${file_name} * @文件路径: ${package_name} * @功能描述: ${todo} * @作者: ${ ...
- 【温故知新】c#抽象类abstract与接口interface
1.什么是抽象类 先来看MSDN对抽象类描述: 抽象类是一些留有部分或全部成员未实现的类,以便可以由派生类来提供实现. 在面向对象的编程中,抽象类用作层次结构的基类,并表示不同对象类型组的通用功能. ...
- 一些Andoid studio常用的快捷键
常用快捷键 Android Studio是基于IntelliJ IDEA的,我们都知道,IDEA是一个很方便很好用的IDE,其中有许多快捷键,但是太多快捷键我们也记不住. 其实,我们可以记住几个 ...
- Spring接收List型参数
第一种形式: 提交的数据形式:id=1,2,3 --> urlEncoding --> id=1%2C2%2C3 <form method="post" act ...
- BNU 20950 ——沉重的货物 —————— · 最短路、最短边最大化」
沉重的货物 Time Limit: 1000ms Memory Limit: 65536KB 64-bit integer IO format: %lld Java class name: ...
- Javascript 对象Object
1.new构造函数法 2.对象字面量 对象字面量很好理解,使用key/value的形式直接创建对象,简洁方便. 这种方式直接通过花括号将对象的属性包起来,使用key/value的方式创建对象属性, ...
- C#自定义控件 在 Toolbox显示不了的问题
1) Close your solution2) Tools->Options->"Windows Form Designer" - find AutoToolboxP ...
- 关于FileFOutputStream应用中的FileNotFoundException问题
在使用fileoutputstream时经常出现FileNotFoundException问题,即便是同一个程序(可行)改了一下包名再重新编译,就会无缘无故的抛出FileNotFoundExcepti ...