C语言 ---- 函数 结构体 iOS学习-----细碎知识点总结
函数的定义
返回值类型 函数名(形式参数列表) {
函数的实现
}
函数不允许嵌套定义
如果函数的定义在主调函数之后,那么要进行提前声明才能使用.
// 匿名结构体,结构体的声明和变量的定义在一起
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、结构体所占有的总字节数一定等于该结构体所有成员中占用字节数最大的数据类型字节数的整数倍。
C语言 ---- 函数 结构体 iOS学习-----细碎知识点总结的更多相关文章
- 01.C语言关于结构体的学习笔记
我对于学习的C语言的结构体做一个小的学习总结,总结如下: 结构体:structure 结构体是一种用户自己建立的数据类型,由不同类型数据组成的组合型的数据结构.在其他高级语言中称为记录(record) ...
- C语言链表结构体(学习笔记)
#include <stdio.h> #define LENTEST 100 // 采取逐步删除的方法求的素数 //先假设1-100都是素数,然后剔除2的倍数, //3的倍数,直到剔除所有 ...
- OC ---- 字符串 数组 iOS学习-----细碎知识点总结
NSString *urlString = [NSString stringWithFormat:@"http://www.apple.com"]; // 获取字符串 ...
- C语言 ---- 数组 iOS学习-----细碎知识点总结
#pragma mark - 数组:用来存放同一数据类型的数据 // 数组的定义:类型说明符 数组名[常量表达式] = {值1, 值2, 值3...}; // 定义一个float类型的数组,用来 ...
- C语言 ---- 指针 iOS学习-----细碎知识点总结
内存的访问形式:1.直接访问:通过变量名进行访问.2.间接访问:先找到变量存放的地址,然后根据地址去访问对应的内存空间. 指针--- // 定义一个整形指针变量,用来存储num1在内存中的地址 ...
- C语言 ---- 循环分支 iOS学习-----细碎知识点总结
#import <Foundation/Foundation.h> // #import是OC种的导入头文件或者是系统框架的指令 // 定义了一个Season枚举类型enum Seaso ...
- C语言 ---- 基本数据类型和基本运算 iOS学习-----细碎知识点总结
// 导入头文件(stdio.h),标准输入输出的头文件,#include <stdio.h> // 程序的入口int main(int argc, const char * argv[] ...
- OC ---- 字典集合 iOS学习-----细碎知识点总结
实例方法的创建 NSDictionary *wukong = [[NSDictionary alloc] initWithObjectsAndKeys:", @"age" ...
- Go语言 6 结构体、方法和接口
文章由作者马志国在博客园的原创,若转载请于明显处标记出处:http://www.cnblogs.com/mazg/ Go学习群:415660935 结构体(struct)是由一系列具有相同类型或不同类 ...
随机推荐
- Android -----listView的属性大全
http://www.cnblogs.com/zhengbeibei/archive/2013/03/29/2988814.html 01 <?xml version="1.0 ...
- 洛谷 P1449 后缀表达式 Label:表达式计算系列
题目描述 所谓后缀表达式是指这样的一个表达式:式中不再引用括号,运算符号放在两个运算对象之后,所有计算按运算符号出现的顺序,严格地由左而右新进行(不用考虑运算符的优先级). 如:3*(5–2)+7对应 ...
- [WP8.1UI控件编程]Windows Phone VirtualizingStackPanel、ItemsStackPanel和ItemsWrapGrid虚拟化排列布局控件
11.2.2 VirtualizingStackPanel.ItemsStackPanel和ItemsWrapGrid虚拟化排列布局控件 VirtualizingStackPanel.ItemsSta ...
- Codeforces Round #207 (Div. 1) A. Knight Tournament(STL)
脑子又卡了...来一发set的,STL真心不熟. #include <stdio.h> #include <string.h> #include <iostream> ...
- Flex Flash Player回声消除的最佳方法
Adobe Flash Player 已经成为音频和视频播放的非常流行的工具.实际上,目前大多数因特网视频均使用 Flash Player观看. Flash Player 通过将许多技术进行组合可以提 ...
- C#反射生成简单sql语句
static void Main(string[] args) { book book = new book();//实体类 booktest b1 = new booktest(); book.bo ...
- 转自大楚网:微软SAPI:让你的软件能说会道
[IT168专稿]“没声音,再好的戏也出不来.”这虽然是一句广告,但是也说出了一个道理,我们所开发的软件,特别是一些多媒体软件,要是能够发 出声音,能说会道,将为我们的软件增添不少光彩.同时,我们面临 ...
- selenium grid中的多个线程同步执行
需求:有一个工作流,每一步审批都需要多个领导参与,才能推流程到下一步去 代码思考:多个领导在自己的线程中运行,速度有的快有的慢,如何保证下一步的领导审批时,这个步骤已经激活 如下是代码:思路为:如果这 ...
- iOS性能优化:Instruments使用实战
iOS性能优化:Instruments使用实战 最近采用Instruments 来分析整个应用程序的性能.发现很多有意思的点,以及性能优化和一些分析性能消耗的技巧,小结如下. Instrument ...
- 李洪强iOS经典面试题123
1.static 关键字的作用: (1)函数体内 static 变量的作用范围为该函数体,不同于 auto 变量,该变量的内存只被分配一次, 因此其值在下次调用时仍维持上次的值; (2)在模块内的 s ...