C语言
文章平均质量分 78
初识C语言,深度解析C语言
棕旨2434
学习分享,笔记
展开
-
C语言指针的进阶,数组指针,函数指针
本章重点字符指针数组指针指针数组数组传参和指针传参函数指针函数指针数组指向函数指针数组的指针回调函数指针和数组面试题的解析指针我们知道了指针的概念:指针就是个变量,用来存放地址,地址唯一标识一块内存空间。指针的大小是固定的4/8个字节(32位平台/64位平台)。指针是有类型,指针的类型决定了指针的±整数的步长,指针解引用操作的时候的权限。指针的运算。目录1. 字符指针1. 字符指针#include<stdio.h>int main(){ char原创 2021-11-15 16:19:26 · 414 阅读 · 1 评论 -
C语言数组,一维数组,二维数组
目录1. 一维数组的创建和初始化1.1 数组的创建1.2 数组的初始化1.3 一维数组的使用1.4 一维数组在内存中的存储2. 二维数组的创建和初始化2.1 二维数组的创建2.2 二维数组的初始化2.3 二维数组的使用三级目录1. 一维数组的创建和初始化1.1 数组的创建数组是一组相同类型元素的集合。数组的创建方式:type_t arr_name [const_n];//type_t 是指数组的元素类型//const_n 是一个常量表达式,用来指定数组的大小数组创建的实例://代原创 2021-10-22 19:15:42 · 567 阅读 · 0 评论 -
C语言初识指针
目录1. 指针是什么?2. 指针和指针类型3.野指针3.1 野指针成因3.2 如何规避野指针4. 指针运算1. 指针是什么?在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。指针是个变量,存放内存单元的地址(编号)。总结:指针就是变量,用来存放地址的变量。(存放在指针中的值都被原创 2021-10-28 23:40:53 · 338 阅读 · 0 评论 -
C语言实现扫雷游戏
目录文件介绍游戏介绍游戏设计完整代码文件介绍*test.c:*测试*game.c:*游戏函数的实现*game.h:*游戏函数的声明游戏介绍玩游戏不一定玩一把,所以要循环。扫雷就是把不是雷的点都找到,且是雷的点都没排到,那么排雷成功。游戏设计创建两个数组,一个放布置雷的信息,另外一个存放排查出来雷的信息。布置雷的信息初始化为0,排查出来雷的信息初始化为*,然后布置雷,排查雷。完整代码game.h#pragma once#include<stdio.h>#include&l原创 2021-10-23 18:09:32 · 1878 阅读 · 0 评论 -
分值和循环语句,if,for,while,do while。。。。。goto语句
分支语句if语句switch语句循环语句while语句for语句do while语句goto语句目录if语句悬空elseif书写形式对比判断奇数switch语句switch语句中的break练习while循环语法结构while中的break和continue总结if语句语法结构: if(表达式) 语句; if(表达式) 语句1; else 语句2; //多分支 if(表达式1) 语句1;原创 2021-10-16 13:05:00 · 203 阅读 · 0 评论 -
零基础学C语言,初识C语言
目录1.什么是C语言2.第一个C语言程序3.数据类型4. 变量、常量4.1定义变量的方法三级目录1.什么是C语言C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。二十世纪八十年代,为了避原创 2021-10-12 14:40:35 · 287 阅读 · 9 评论 -
C语言数组的应用,实现三子棋游戏
目录棋盘样式游戏规则菜单实现游戏棋盘初始化棋盘打印下棋过程玩家下棋电脑下棋判断获胜情况判断其盘满完整代码棋盘样式棋盘是三行,三列,就可以看成一个二维数组board[3][3].三子棋首先需要创建二维数组并初始化,初始化为一个空格,然后将初始值和分割线打印出来就可以打印棋盘的样式。游戏规则用户和电脑玩游戏,用户下棋位置由用户输入(1,1)表示第一行第一列位置,行数范围1-3,列数范围1-3,电脑下棋位置由电脑产生随机数,也要保证范围,即行数范围1-3,列数范围1-3。用户落棋点显示*,电脑落棋原创 2021-10-22 23:45:47 · 1932 阅读 · 0 评论 -
C语言深度剖析数据在内存中的存储
重点数据类型详细介绍整形在内存中的存储:原码、反码、补码大小端字节序介绍及判断浮点型在内存中的存储解析目录1. 数据类型介绍1.1 类型的基本归类:2. 整形在内存中的存储2.1 原码、反码、补码2.2 大小端介绍2.3练习:3. 浮点型在内存中的存储3.1 浮点数存储规则3.2应用1. 数据类型介绍char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点原创 2021-11-04 21:25:43 · 132 阅读 · 0 评论 -
C语言函数、函数声明、定义、递归、汉诺塔问题、青蛙跳台阶问题
目录1.函数的定义2.C语言函数的分类2.1 库函数:2.2自定义函数3.函数的参数3.1 实际参数(实参):3.2形式参数(形参):4.函数的调用:4.1 传值调用4.2 传址调用4.3 练习5. 函数的嵌套调用和链式访问5.1嵌套调用5.2 链式访问6. 函数的声明和定义6.1 函数声明:6.2 函数定义:7. 函数递归7.1 什么是递归?7.2 递归的两个必要条件7.2.1 练习1:7.2.2 练习2:7.3 递归与迭代7.3.1 练习3:7.3.2 练习4:7.4函数递归的几个经典题目:汉诺塔问题、原创 2021-10-18 23:39:26 · 320 阅读 · 7 评论 -
C语言static关键字
目录static关键字修饰局部变量修饰全局变量修饰函数static关键字static修饰局部变量使得局部变量出了自己的范围也不销毁,其实是改变了其生命周期 但是作用域还是局部的。static修饰全局变量static修饰函数修饰局部变量不使用static修饰局部变量:void test() { int a = 1; a++; printf("%d\n", a);}int main() { int i = 0; while (i < 10) { test();原创 2021-10-13 21:43:29 · 109 阅读 · 3 评论 -
C语言操作符详解
目录1.操作符分类2.算术操作符3. 移位操作符3.1左移操作符3.2右移操作符4. 位操作符4.1 按位与&4.2 按位或|4.3按位异异或^4.4交换两个数的值,不创建临时变量5. 赋值操作符5.1符合操作符6. 单目操作符6.1 单目操作符介绍6.2 sizeof 和 数组三级目录1.操作符分类算术操作符移位操作符位操作符赋值操作符单目操作符关系操作符逻辑操作符条件操作符逗号表达式下标引用、函数调用和结构成员2.算术操作符+ - *原创 2021-10-26 18:39:16 · 392 阅读 · 1 评论 -
C语言define和初级指针
目录definedefine定义常量define定义宏指针definedefine定义常量#define NUM 1000//定义常量int main() { int a = NUM; printf("%d\n", a); return 0;}define定义宏int Add(int x, int y) { int z = x + y; return z;}//宏-#define可以定义宏#define ADD(X,Y) ((X)+(Y))int main() {原创 2021-10-13 23:48:11 · 386 阅读 · 3 评论 -
结构体,一看就懂
目录定义结构体类型结构体初始化及成员访问:总结定义结构体类型定义一个书的结构体类型:struct Book{ char name[30];//C语言程序设计 float price;//定价 char id[20];//书号};结构体初始化及成员访问:void Print(struct Book* pb) { printf("书名:%s\n", (*pb).name);//(*pb).name相当于pb->name printf("定价:%f\n", (*pb).price)原创 2021-10-15 14:20:21 · 50 阅读 · 0 评论