C语言学习笔记
Castiellee929
这个作者很懒,什么都没留下…
展开
-
char *p = "abcdefg"; 常量字符串"abcdefg"位于静态存储区,通过p不能修改该字符串常量
一、程序的内存分配1、栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量值等;2、堆区(heap) :一般由程序员分配释放, 若程序员不释放,程序结束时可能由操作系统OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表; (malloc,new,free,delete)3、全局区(静态区)(static):全局变量和静态变量的存储是放在一块的,初始化的全局变量...原创 2019-03-17 22:23:08 · 1463 阅读 · 0 评论 -
二级指针做输入的几种模型
字符串数组的排序和打印:第一种模型:交换的是指针指向1、char *myArray[] = {"aaaaaaa","ccccccc","bbbbbbbb","111111111"}myArray先与[]结合,所以myArray是一个数组,然后再与*结合,说明数组里的元素是指针类型,然后再与char结合,说明指针所指向的内容是char型的。myArray是一个指针形成的数组的首地址,所以...原创 2019-03-24 22:52:13 · 263 阅读 · 0 评论 -
多维数组(数组类型,数组指针,数组指针类型)
数组:概念元素类型角度:数组是相同类型的变量的有序集合 测试指针变量占有内存空间大小内存角度:联系的一大片内存空间易忽略的细节数组首元素的地址和数组地址是两个不同的概念;数组名代表数组首元素的地址,它是个常量;数组首元素的地址和数组的地址值相等;int Myarray100] = {0};//Myarray是数组首元素地址,Myarray+1 步长是四个字节(siz...原创 2019-03-26 16:08:49 · 392 阅读 · 0 评论 -
结构体知识点梳理
定义结构体变量及初始化的方法1)定义类型 用类型定义变量typedef struct Teacher{ char name[64]; int age; int id;}Teacher;int main(){ Teacher t0 = {"Mr Li ziyi",21,01}; strcpy(t0.name,"t1name"); //t1. "."操作符 寻址操作,计...原创 2019-03-30 22:20:04 · 395 阅读 · 0 评论 -
链接动态库
.lib 资源模式文件 描述.dll文件.dll 动态库(函数二进制码集合,里面有函数的函数体),动态库室友规范的;如何链接动态库?将.lib和.dll文件拷贝到对应文件下把.lib文件加入到下面的对话框中(可以理解为让编译器通过.lib文件去寻找.dll文件)动态库测试环境和调试环境搭建在DLL代码中,必须向下面这样明确声明导出函数:__declspec(dllex...原创 2019-04-04 17:13:35 · 371 阅读 · 0 评论 -
C语言指针学习中易犯的错误
1、向null地址处copy数据char *str = NULL;strcpy(str,"aaaaabbbbb");错误!NULL是操作系统保护的空间,不能往里面拷贝数据;2、void Swap(int a,int b)//错误案例//不能实现实参a,b的互换void Swap(int a,int b){ int tmp = a; a = b; b = tmp...原创 2019-04-01 15:24:14 · 301 阅读 · 0 评论 -
C语言文件操作
http://c.biancheng.net/c/file/转载 2019-04-01 22:02:05 · 141 阅读 · 0 评论