摘要: 第31课 - 程序的内存布局 有初始值的放在data段,没有初始的放在bss段。静态存储区就对应了这两个区域。 我们写的函数,可移执行的代码段,放在text段。 这里并不见堆和栈的踪影,因为这只是我们的可执行文件的布局,并不会我们执行起来,进程的布局,所以是看不到堆和栈的。 高地址内存 File h 阅读全文
posted @ 2018-10-15 21:01 free-锻炼身体 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 第30课 - 程序中的三国天下 一. 概念 代码区:存放函数体的二进制代码 文字常量区 —常量字符串就是放在这里的。 程序结束后由系统释放 函数指针指向Code区,是程序运行的指令代码,数据指针指向Data,Heap,Stack区,是程序依赖以运行的各种数据 在文件作用域声明inline函数默认为s 阅读全文
posted @ 2018-10-13 19:27 free-锻炼身体 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 第29课 - 动态内存分配 先看一段例程,超市模拟程序,记录卖出去东西的价格以及名称 #include <stdio.h> #include <string.h> struct Product { char name[128]; int price; }; struct Product pro[10 阅读全文
posted @ 2018-10-13 19:26 free-锻炼身体 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 第27课 - 数组参数和指针参数分析 答: l C语言中只会以拷贝的方式传递参数 l 当向函数传递数组时有两种传递方式 (1)将整个数组拷贝一份传入函数 (2)将数组名看做常量指针传数组首元素地址 上面的两种方式,显然第二种更合理。C语言以高效为最初的设计目标,在函数传递的时候,如果拷贝整个数组执行 阅读全文
posted @ 2018-10-13 19:25 free-锻炼身体 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 第28课 - 函数与指针分析 (1) C语言中的函数有自己特定的类型。 (2) 函数的类型由返回值、参数类型和参数个数共同决定。 eg: int add(int i, int j)的类型为:int(int, int),三个位置都一样才是一样的函数。 (3) C语言中通过typedef为函数类型重命名 阅读全文
posted @ 2018-10-13 19:25 free-锻炼身体 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 第26课 - 多维数组和多维指针 (1)指针变量的本质是一个变量,在内存中会占用一定的空间,因此可以定义指针来保持指针变量的地址值。 (2)定义指向指针的指针,主要由于指针也同样存在传值调用与传址调用。 eg: #include<stdio.h> #include<string.h> int mai 阅读全文
posted @ 2018-10-13 19:24 free-锻炼身体 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 第25课 - 指针数组和数组指针分析 思考: 下面这些声明合法吗?int array[5]; 常规数组 int matrix[3][3]; 二维数组 int* pA = array; pA指针用array初始化,pA指向的是首元素的地址,pA不是数组指针 int* pM = matrix; pM指针 阅读全文
posted @ 2018-10-09 10:33 free-锻炼身体 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 第24课 - C语言中的字符串 l 从概念上讲,C语言没有字符串数据类型。 l C语言中使用字符数组来模拟字符串。 l C语言的字符串是以’\0’结束的字符数组。 l C语言中的字符串可以分配于栈空间、堆空间或只读存储区。 eg: #include <stdio.h> #include <mallo 阅读全文
posted @ 2018-10-09 10:31 free-锻炼身体 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 第22课 - 数组基础 1. 数组的概念 数组是相同数据类型的变量的有序集合。 数组在一片连续的内存空间中存储元素。 数组元素的个数可以显示或隐式指定。 eg: int a[5] = {1, 2}; //指定长度为5,后3个元素编译器初始化为0 int b[] = {1, 2}; //隐式指定长度为 阅读全文
posted @ 2018-10-09 10:30 free-锻炼身体 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 第23课 - 数组与指针分析 数组是一段连续的内存空间 数组的空间大小为sizeof(array_type)*array_size 数组名可看做指向数组第一个元素的常量指针 (1)指针是一种特殊的变量,与整数的运算规则为: p+n;< >(unsigned int)p + n*sizeof(*p); 阅读全文
posted @ 2018-10-09 10:30 free-锻炼身体 阅读(192) 评论(0) 推荐(0) 编辑