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)是由一系列具有相同类型或不同类 ...
随机推荐
- Hadoop2.2.0 hive0.12 hbase0.94 配置问题记录
环境:centos6.2 Hadoop2.2.0 hive0.12 hbase0.94 1>hadoop配好之后,跑任务老失败,yarn失败,报out of memory错误,然后怎么调整内存大 ...
- Haskell 笔记 ③
①循环?NO!请递归思考问题! 手艹一个求列表中最大值代码,C语言中习惯性for扫一下比较出最大值.但是可以用递归! maximum'::(Ord a)=>[a]->a maximum' ...
- Codeforce - Travelling Salesman
After leaving Yemen, Bahosain now works as a salesman in Jordan. He spends most of his time travelli ...
- 【BZOJ】1406: [AHOI2007]密码箱
http://www.lydsy.com/JudgeOnline/problem.php?id=1406 题意:求$0<=x<n, 1<=n<=2,000,000,000, 且 ...
- Codeforces Beta Round #35 (Div. 2) E. Parade(扫描线)
题目链接 只要会做,周长并,这题肯定有思路. 有个小地方敲错了,细心啊,扫描线,有一段时间没写过了,还有注意排序的问题,很重要. #include <iostream> #include ...
- Android -- 编辑框更改样式
1. 效果图
- Linux之硬件管理(不断更新中)
1 查看CPU信息 [root@limt01 .ssh]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64- ...
- zend studion实现自动换行
真是学一门语言不仅有学语言的阻碍,同时还有编写代码工具的障碍,zend studion的自动换行问题 zend studion默认的是不会自己换行,百度查找后找到了如下个方法: 实现: 菜单" ...
- Load Mental Ray in Maya 2015
In Maya 2015, we usually use mental ray to render our model, some new users may not see the mental r ...
- Odoo 路线规则实现机制浅析
事情是这个样子的:项目在实施过程中,碰到A仓库向B仓库供货的情况,心想这还不简单,老老实实地建多个仓库并将B仓库的供货仓库选为A仓库,再设置好产品的再订购规则,万事大吉了.然而,事情并非想象的那么简单 ...