C语言
文章平均质量分 74
发烧的CPU
你不是菜,你是不够自信并且不够努力!
展开
-
C语言程序环境和预处理
_FILE__//进行编译的源文件__LINE__//文件当前的行号__DATE__//文件被编译的日期__TIME__//文件被编译的时间__STDC__//如果编译器遵循ANSIC,其值为1,否则未定义intmain(){%s\nlinereturn0;}#defineregregister//为register这个关键字,创建一个简短的名字;)//用更形象的符号来替换一种实现case//在写case语句的时候自动把break写上注意温馨提示。......原创 2022-07-18 20:01:35 · 244 阅读 · 15 评论 -
用C实现三种版本的通讯录
据标题所述,本文将详细讲解三种版本通讯录的写法,分别是静态的版本;动态的版本;文件的版本。原创 2022-07-17 19:32:57 · 610 阅读 · 10 评论 -
C语言中的文件操作
被使用的文件在内存中开辟了文件信息区,存放文件的名字、状态、当前位置等信息,这些信息保存在结构体变量中,结构体类型取名FILE。二进制文件读取结束判断返回值是否小于实际要读的个数,fread判断返回值是否小于实际要读的个数。因为有缓冲区的存在,C语言在操作文件的时候,需要做刷新缓冲区或者在文件中操作结束时的时候关闭文件。定义pf是一个指向FILE类型数据的指针变量,使pf指向某个文件的文件信息区,并访问文件。feof函数表示在文件读取结束的时候,文件结束的原因是读取失败,还是遇到文件结尾。.........原创 2022-07-17 18:53:07 · 1384 阅读 · 12 评论 -
动态内存管理
为什么会有动态内存分配呢?上述开辟空间的方式a.空间大小是固定的b.数组声明时,需指定数组长度,它所需要的内存在编译时分配但有时候所需空间大小在运行时才知道,就要用到动态内存开辟了。...原创 2022-07-16 20:52:18 · 978 阅读 · 12 评论 -
自定义类型:结构体,位段,枚举,联合
目录一、结构体1、结构体类型的声明2、匿名结构体类型:3、结构体的自引用4、结构体变量的定义和初始化5、结构体内存对齐6、修改默认对齐数二、位段1、位段的声明2、位段的内存分配三、枚举1、枚举类型的定义2、枚举的优点四、联合(公用体)1、联合类型的定义2、联合的特点3、大小的计算在C语言中我们知道有内置类型,如char,short,int ,float,double等,那么如果我们想用一个类型来表示一个复杂的对象该怎么办呢,这时候就要用到自定义类型。结构体是一些成员变量的集合,每个成员可以是不同类型的变量。原创 2022-07-12 15:34:02 · 326 阅读 · 11 评论 -
字符函数和字符串函数
目录strlenstrcpystrcatstrcmpstrncpystrncatstrncmpstrstrstrtokstrerror字符分类函数(需引用头文件#include)字符大小写转换mencpymemmovememcmpC语言本身没有字符串类型,字符串存放在常量字符串或字符数组中。求字符串长度strlen函数返回的是在字符串中'\0'前面出现的字符个数(不包含'\0')形参指向的字符串必须要以'\0'结束函数的返回值是size_t,是unsigned int无符号整型模拟实现:(特别说原创 2022-07-08 17:36:05 · 179 阅读 · 6 评论 -
三子棋游戏
编写此游戏最好新建三个文件:两个源文件,一个头文件即://test.c 测试游戏的逻辑 //game.c 游戏代码的实现 //game.h 游戏代码的声明(函数声明、符号定义)先说下编译此游戏的关键步骤思路:1、创建一个二维数组(棋盘),并进行初始化2、打印棋盘形状3、玩家下棋4、判断输赢并打印棋盘4、电脑下棋5、判断输赢并打印棋盘……(以此循环,直到分出胜负或平局)其中有五个关键的自定义函数:初始化棋盘的函数、打印棋盘的函数、玩家下棋的函数、电脑下棋的函原创 2022-07-04 21:30:19 · 828 阅读 · 14 评论 -
指针和数组的相关练习题
注意:假设本练习题所用的VS编译器是64位平台下的。首先要明白数组名的意义:1、sizeof(数组名),这里的数组名表示整个数组,计算的是整个数组的大小。2、&数组名,这里的数组名表示整个数组,取出的是整个数组的地址。3、除此之外所有的数组名都表示首元素的地址。一、一维数组运行结果: 二、字符数组运行结果: 补充:sizeof是操作符,只关注占用内存空间的大小,不在乎内存中放的是什么strlen是库函数,只针对字符串,strlen是求字符串长度的,关注的是字符串中的\0,计算的是\0之前出现的字原创 2022-07-02 11:47:27 · 594 阅读 · 3 评论 -
C程序中的函数递归
一、函数递归的条件及定义1、条件a.有限制条件,达到限制条件时,递归不再继续;b.每次递归调用都会越来越接近限制条件。2、定义一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解。二、例题引入a.b.c.d.如何解决递归过程中栈溢出的问题?a.将递归改为非递归;b.使用static对象替代nonstatic局部对象。在递归函数设计中,可以使用static对象替代nonstatic局部对象(原创 2022-06-13 09:39:28 · 130 阅读 · 0 评论