您的位置:首页 > 编程语言 > C语言/C++

C语言 ---- 函数 结构体 iOS学习-----细碎知识点总结

2015-11-07 16:33 549 查看
函数的定义
返回值类型 函数名(形式参数列表) {
函数的实现
}

函数不允许嵌套定义

如果函数的定义在主调函数之后,那么要进行提前声明才能使用.

// 匿名结构体,结构体的声明和变量的定义在一起
struct {
int number;
char name[30];
} student1 = {1, "wukong"}, student2 = {2, "bajie"};

// 定义一个MyPoint类型结构体变量
// 格式:struct 结构体类型 变量名 = {初值};
struct MyPoint point1 = {2.9, 3.0};
struct Student stu1 = {"yaoming", 1, 'm', 30, 90.0};
struct MySize size1 = {30.8, 50.0};
struct MyDate date1 = {2015, 7, 29};

// 访问结构体成员:结构体变量名.成员变量名
printf("name = %s\n", stu1.name);
printf("year = %d\n", date1.year);
size1.height = 100.0;

struct Student stu2 = {"mayun", 2, 'm', 50, 99.0};
stu1 = stu2;
printf("stu1.name = %s\n", stu1.name);
// 我们可以通过给结构体变量赋值的形式达到给结构体中数组类型的成员赋值的目的。

// typedef 原类型名 新的类型名
typedef int Integer;
Integer num1 = 30; // 和int num1 = 30; 完全等价
typedef struct Student Student; // 给struct Student结构体类型起一个别名为Student
Student stu3 = {"beikehanmu", 3, 'm', 40, 100.0};
printf("name = %s\n", stu3.name);

// 结构体的内存占用
printf("%lu\n", sizeof(struct MySize));
printf("%lu\n", sizeof(struct MyPoint));
printf("%lu\n", sizeof(struct MyDate));
printf("%lu\n", sizeof(Student));
// 结构体内存占用的两个原则:1、对于每一个结构体成员来说,都会认为前面已经分配了该成员类型所占字节数的整数倍个字节;2、结构体所占有的总字节数一定等于该结构体所有成员中占用字节数最大的数据类型字节数的整数倍。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: