初学
文章平均质量分 52
Red Lees
互粉互关QAQ
展开
-
结构 联合枚举
结构:结构是由程序员自己设计的一种数据类型,用于描述某一个事务的各项数据,由若干个不同的基础数据类型组成设计:struct结构体名{ 数据类型1 成员名1; 数据类型2 成员名2: ... };定义结构变量:struct 结构体名 结构体变量名;注意:在定义结构变量时,struct 关键词不能省略定义结构变量初始化:struct 结构体名 结构体变量名 = {v1,v2,v3,...};注意:要根据设计结构体时成员顺序来初始化struct 结构体名 结构原创 2021-05-05 23:24:20 · 254 阅读 · 1 评论 -
头文件
头文件应该写什么:问题:头文件可能被任何的源文件包含,意味着头文件的内容会在多个目标文件中存在,合并时不能冲突重点:头文件中只能编写声明语句,不能有定义语句全局变量声明函数声明宏常量宏函数typedef 类型重定义结构、联合、枚举的类型声明头文件的编写规则:1、为每个.c文件写一份.h文件,.h文件是对.c文件的说明2、如果需要用到某个.c文件的变量、函数、宏,只需要把它的头文件导入即可3、.c文件也需要导入自己的.h文件,目的是为了让声明与定义一致头文件的相互包含:假如a.h原创 2021-05-05 22:28:59 · 411 阅读 · 0 评论 -
预处理/宏
预处理指令:程序员所编写的代码不能被真正的编译器所编译,需要一段程序把代码翻译一下。翻译的过程叫做预处理,执行翻译的程序叫做预处理器,被翻译的代码叫做预处理执行指令,以#开头的都是预处理指令查看预处理结果: gcc -E code.c 把预处理的结果直接显示到终端上 gcc -E code.c -o code.i 把与处理结果寄存到.i结尾的文件中预处理指令的分类 #include 文件包含 #include< > 从系统指原创 2021-05-05 22:13:42 · 246 阅读 · 1 评论 -
字符串儿
字符串:字符:在计算机中字符是以整数形式存储的,当需要显示时根据ASCII表中的对应关系显示出相应的符号或图案‘\0’ 0‘0’ 48‘A’ 65‘a’ 97串:是一种数据结构,是由一组连续的相同类型若干个数据组成,末尾有结束标志对这种数据结构进行处理都是批量性处理,从开头位置到结束标志为止字符串:有字符组成的串形结构,它的结束标志是’\0’字符串的输入:scanf %cscanf %s 地址注意:不能接收空格char *gets(char *原创 2021-04-20 20:27:15 · 133 阅读 · 1 评论 -
栈内存(malloc)/递归
什么是堆内存:是进程的一个内存段(text\data\bss\heap\stack),是由程序员手动管理的特点:足够大, 缺点:使用麻烦为什么要使用堆内存:1、随着程序的复杂数据指挥越来越多2、其他内存段的申请释放不受控制,对内存的申请释放是受控制如何使用堆内存:注意:C语言中没有控制对内存的语句,只能使用C标准库提供的函数#include<stdlib.h>void *malloc(size_t size);功能:从堆内存中申请size个字节的内存,申请到的内存存储是原创 2021-04-20 19:55:30 · 435 阅读 · 0 评论 -
关于指针
什么是指针:指针就是一种特殊的数据类型,使用它可以定义指针变量,指针变量中存储的就是整形数据。代表了内存的编号,通过这个编号可以访问到对应的内容。为什么要使用指针:1、函数之间是相互独立的,但是有时候需要共享变量 函数传参是值传递 全局变量容易命名冲突 使用数组还需要传递长度 命名空间是独立的,但是地址空间是同一个,所以指针可以解决这个问题2、由于函数之间传参是值传递(内存拷贝),对于字节数较多的变量,值传递的效率比较低,如果传递变量的地址只需要传递4\8字原创 2021-04-09 16:31:27 · 98 阅读 · 0 评论 -
进程/类型限定符
设计函数的准则:1、一个函数最高只解决一个问题,这样可以降低错误率,提高代码可读性2、最好不依赖其他函数(降低耦合度)3、数据由调用者提供,把结果返回给调用者(通用性)4、要考虑清楚调用者提供的非法数据,可以通过返回值告诉调用者,或者把可能出现的情况写在注释上(健壮性)进程映像:程序:储存在磁盘上的可执行文件(二进制文件,脚本文件)进程:正在系统中运行的程序进程映像:指的是进程的内存分布情况text 代码段: 存储的是二进制指令、常量数据,权限是只读,强制修改会产生段错误data原创 2021-04-20 19:46:53 · 70 阅读 · 0 评论 -
进制/函数
进制/函数进制进制转换原码、反码、补码位运算符函数函数的分类标准库函数自定义函数函数声明隐式声明函数定义:函数调用:进制进制转换因为现在的CPU只能识别高低两种电流,只能对二进制数据进行计算二进制数据虽然能够直接被CPU识别计算,但是不方便书写、记录,把二进制转换成八进制是为了方便记录在文档中随着CPU的位数不断发展,由早期8位逐渐发展到现在64位,因此八进制也逐渐不能满足需求了所以才出现了十六进制十进制转二进制:求余法:用2对数据求余,然后再对商继续求余,直到商为0结束,过程中产生的余数原创 2021-04-12 09:55:12 · 153 阅读 · 0 评论 -
分支语句/循环
分支/循环分支if else开关语句循环for循环while语句do while嵌套语句跳转语句分支if elseif else switch case defualtif(表达式)//单分支{ 表达式为真,则执行此处代码 //注释}if(表达式)//双分支{ 表达式为真,则执行此处代码}else{ 表达式为假,则执行此处代码}if(表达式1)//双分支{ 表达式1为真,则执行此处代码}else if(表达式2){ 表达式2为原创 2021-04-12 09:29:50 · 56 阅读 · 0 评论 -
C语言简介
C语言入门知识1、C语言简介2、第一个程序3、编译器4、把C代码变成可执行程序的过程5、C文件类型6、存储空间的单位7、数据类型8、变量与常量9、格式化输入输出10、运算符1、C语言简介发展历史:BCPL->newB->C->UNIX->Minux->Linux->gccC语言诞生1970~1973年,在肯.汤普逊和丹尼斯.里奇的领导下编写完成的,归属于美国的贝尔实验室。C语言专门编写操作系统的语言,所以天生适合对硬件编程,也速度快著称。也非常适合实现数据结构与算原创 2021-04-11 23:56:39 · 240 阅读 · 0 评论