![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 74
_错错错
交流技术问题,可以直接发邮件:liyangccsc@163.com
展开
-
【C 语言】程序环境和预处理(你写的代码究竟遭遇了什么?)
目录一、程序的翻译环境和执行环境二、编译&&链接1. 预处理2. 编译(狭义的编译)3. 汇编4. 链接注意:三、预处理预定义符号#define1. #define定义标识符2.给类型定义别名3.自定义一些关键字4.通过宏作一些编译开关5.定义一个代码片段已经有函数了,为什么还要有宏来完成类似的效果?宏带来的问题一、程序的翻译环境和执行环境翻译环境: 在这个环境中源代码被转换为可执行的机器指令 执...原创 2021-11-07 08:50:17 · 339 阅读 · 0 评论 -
【C语言】文件居然还能这样操作 (代码演示 + 详解 + 应用)
这篇博客和大家分享关于C语言文件操作方面的知识,相互交流,共同进步什么是文件?我们前面写的代码里面都在使用 “变量”,或者说在使用内存内存特点容量小,速度块,断电之后数据丢失,比较贵但是内存不能满足我们所有的使用场景。我们在有的时候也希望存储容量大一些,速度稍慢点也没太大关系,希望数据能够持久存储,这个时候我们用到外存,比如存在硬盘里面外存特点容量大,速度慢,断电之后数据仍存在,相比内存便宜一些那么我们如何让数据在外存上存储呢? 关键就是通过文件文件的路...原创 2021-11-04 10:23:07 · 3010 阅读 · 0 评论 -
【C语言】十大函数超详讲解==>字符串函数&&内存函数 (详细讲解+代码演示+模拟实现)
这篇文章主要介绍一些常用的库函数,如果哪里有问题,欢迎评论区指正前言C语言中的库函数,别人已经写好,我们可以直接拿来用,降低了开发门槛,提高了开发效率这里的这些函数我们不仅要会用,还要知道它的内部是怎么实现的,也要会自己实现它。学习库函数的时候应该要多查官方文档,看文档中对函数的说明,来更好的学习库函数推荐两个C语言在线文档:cplusplus.com - The C++ Resources Networkcppreference.com在学习C语言库函数的时..原创 2021-11-01 09:05:21 · 726 阅读 · 0 评论 -
【C语言】☀️动态内存管理及相关函数
一、为什么存在动态内存分配之前我们学过的开辟空间的方式就是如下两种:int main(){ int a = 5; char ch = 'b'; int arr[20] = { 0 };}以上的开辟内存的方式都是开辟好内存之后所开辟的内存是固定的,不能改变的,这种开辟方式不够灵活C语言里面的动态开辟内存就解决了这个问题在学习C语言的时候通常大致将内存划分为三部分:栈区,堆区,静态区动态开辟内存就是在栈上面开辟的空间二、动态内存函数malloc和free...原创 2021-10-23 12:05:32 · 514 阅读 · 0 评论 -
【C语言】☀️自定义类型(结构体+位段+枚举+联合体)【建议收藏】
一、为什么会有结构体呢?我们前面所学到的那些数据类型:char,int,double,还有指针都是不足以去表达对象,如果我们要去表示一个人,能用一个数字去表示吗?肯定是不行的,要知道人是属于复杂对象,不能简单的用某个数来表示,要表示一个人,需要很多方面,比如姓名,性别,年龄等。要表示人,我们就得创造一种复杂类型,C语言里面就有了结构体类型结构体是C语言中特别重要的知识点,结构体使得C语言有能力描述复杂类型结构体类型也是需要字己创建的二、结构体的声明结构的基础知识结构是一些值的集合..原创 2021-10-17 10:50:17 · 1644 阅读 · 0 评论 -
【C语言进阶】浮点数在内存中的存储&&从内存中拿出数据(IEEE754标准)
我们在前面也用过一些浮点数了,那么它在内存中到底是怎么存的呢,怎么从内存中拿出来?和整型的存储一样吗?通过这篇文章带你搞懂它目录常见的浮点数:浮点型和整型的存储方式是不一样的怎么存IEEE 754规定:注意:指数E从内存中取出1.E不全为0或不全为12.E全为03.E为全1常见的浮点数:3.14159 1E10(科学计数法) 浮点数家族包括: float、double、long double 类型。 浮点数表示的范围我们可以在编译器...原创 2021-10-14 07:33:27 · 658 阅读 · 0 评论 -
【C语言】超详讲解☀️ 指针是个什么针?(指针进阶篇)(讲解+代码演示+图解)
在前面的指针是个什么针?这篇文章中已经写了指针的基础知识,然后通过这篇文章来对指针进行更深层次的理解目录一、字符指针二、指针数组三、数组指针数组名和&数组名数组指针的使用四、函数指针函数地址函数指针创建函数指针的使用五、函数指针数组六、指向函数指针数组的指针一、字符指针字符指针的创建也是挺简单的,char*类型一次最多可访问一个字节的空间请看如下代码:#include <stdio.h>int main()...原创 2021-09-30 07:39:30 · 1620 阅读 · 0 评论 -
【C语言】超详讲解☀️指针是个什么针?(一次性搞定指针问题)
目录前言什么是指针?引例计算机是怎么对内存单元编号的呢?内存空间的地址如何得到想存地址怎么办?本质目的不是为了存地址指针和指针类型前言指针这一部分可能很多人在学习的时候都觉得很难,但在这里我想说的是:不要自己吓自己,想一想,你当初刚上大学的时候可能觉得高数非常难,最后学完整本书的时候回过头再看还觉得很难吗? 肯定已经觉得没有刚开始学那么难了,那么其实指针也是这样的,只要把里面的东西都搞清楚,你就不觉得难了。一、 什么是...原创 2021-09-22 08:34:11 · 4495 阅读 · 2 评论 -
【C语言进阶】☀️数据类型&&整型在内存中的存储
目录一、数据类型介绍二、类型的意义三、类型的基本归类、整型家族浮点数家族构造类型(自定义类型)指针类型空类型四、整形在内存中的存储原码、反码、补码大小端字节序一、数据类型介绍数据从大的方向分为两类:内置类型 自定义类型内置类型我们前面已经学习过,如下:char //字符数据类型short //短整型int //整形long //长整...原创 2021-10-07 10:15:09 · 1433 阅读 · 0 评论 -
【C语言】☀️操作符详解☀️(详细讲解+代码演示+图解)
通过这篇文章我们将熟练掌握C语言中的各种操作符,表达式求值是如何使用操作符的,表达式求值该注意一些什么呢?一、操作符分类:算术操作符 移位操作符 位操作符 赋值操作符 单目操作符 关系操作符 逻辑操作符 条件操作符 逗号表达式 下标引用、函数调用和结构成员操作符算数操作符+ - * / %注意:除了% 操作符之外,其他的几个操作符都可以作用于整数和浮点数。 % 操作符的两个操作数必须为整数。返回的是整除之后的余数如下代码:...原创 2021-09-19 09:49:42 · 2790 阅读 · 0 评论 -
【C语言】☀️ 数组 全面总结(详细讲解+代码演示+图解+经典案例)
一、什么是数组?数组是一组相同类型元素的集合,这些数据在内存中连续存放数组不是C语言的专利,Java、C++、C#、JavaScript、PHP 等其他编程语言也有数组C语言数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。前面在❤️整理2万字带你走进C语言(详细讲解+代码演示+图解)❤️(强烈建议收藏!!!)这篇文章中已经介绍过数组的基本用法,通过这篇文章原创 2021-09-15 08:27:00 · 3333 阅读 · 2 评论 -
【C语言】☀️函数超详讲解☀️(详细讲解+代码演示+图解)【建议收藏】
自己整理的长篇详细学习笔记分享给大家,如有错误,欢迎评论区指正目录一、 函数是什么?C语言中函数的分类二、库函数为什么会有库函数库函数的优点如何学习库函数C语言常用的库函数三、自定义函数为什么要有自定义函数函数的组成自定义函数的使用比较两数中的较大值交换两个整形变量的内容四、函数的参数五、函数的调用传值调用传址调用六、函数的嵌套调用和链式访问嵌套调用链式访问七、函数的声明和定义案例分析函数声明函数定义...原创 2021-09-13 12:41:20 · 4871 阅读 · 2 评论 -
【C语言】☀️分支语句和循环语句,一篇文章就够了☀️(详细讲解+代码演示+图解)【赶快收藏吧】
前言我们要知道C语言是结构化的程序设计语言,这里的结构化是什么意思呢?通常我们写C程序会写出三种结构:顺序结构 循环结构 选择结构计算机语言高度抽象了我们生活中的事情,通过一个计算机语言便能表达我们生活中的问题,以此来便捷的帮助我们解决生活中的问题。通过这篇博客我们来详细的介绍分支语句和循环语句分支语句ifswitch循环语句whilefordo whilegoto语句什么是语句?C语言中由一个分号...原创 2021-09-11 13:48:44 · 1664 阅读 · 0 评论 -
❤️整理2万字带你走进C语言(详细讲解+代码演示+图解)❤️(强烈建议收藏!!!)
目录一、什么是C语言?二、第一个C语言程序代码程序分析程序运行一个工程中出现两个及以上的main函数代码运行结果分析三、数据类型数据各种类型为什么会有这么多的数据类型?计算机单位各个数据类型的大小注意事项数据类型的使用四、变量和常量变量的分类变量的使用变量的作用域和生命周期常量五、字符串+转义字符+注释字符串转义字符注释六、选择语句七、循环语句八、函数九、数组数组是什么呢...原创 2021-09-08 09:18:05 · 16999 阅读 · 8 评论 -
C语言从入门到进阶的必备利器(编译环境搭建完整教程)
前言学习一门语言非常重要的一步那就是通过写代码来练习,每天坚持练习,才能有所提高。然而我们很多人在初学C语言的时候就容易放弃,有一个很重要的原因那就是编译环境的选择,一个好的编译环境可以让你达到事半功倍的效果,高效率的写代码。这里我推荐一款微软的编译环境就是VS2019,它有社区版,专业版和企业版3个版本,其中社区版可免费使用,里面的界面,编译运行,调试和内存窗口等功能都非常好用,调试和内存工具对于初学C语言的人来说真的是一个神级工具,通过调试以及查看内存可以更清楚的理解C语言,并修复bug..原创 2021-09-01 12:27:04 · 795 阅读 · 0 评论 -
【全网最细】3种方法模拟strlen函数计算字符串长度
众所周知,strlen函数是用来计算字符串长度的,但这种计算字符串的函数我们也可以自己写出来,这里详细介绍3种方法1.计数器写法#include<assert.h>int mystrlen(const char* p){ int count = 0; assert(p != NULL); while (*p) { count++; p++; } return count;}int main(){ int len = mystrlen("abcdef");原创 2021-06-08 09:09:52 · 672 阅读 · 0 评论 -
模拟qsort函数功能实现一个通用的冒泡排序(可用于多种类型数组的元素排序)
首先我们了解一下qsort函数的功能void qsort( void *base, size_t num, size_t width, int (__cdecl *compare )(const void *elem1, const void *elem2 ) );原创 2021-06-07 17:59:16 · 451 阅读 · 0 评论 -
实现冒泡排序
在对一个整形数组元素进行排序时,我们可以使用冒泡排序来实现代码实现如下#include<stdio.h>int main(){ int arr[] = { 10,9,8,7,6,5,4,3,2,1 }; int sz = sizeof(arr) / sizeof(arr[0]); //计算数组长度 int i = 0; int j = 0; int tmp = 0; for (i = 0; i < sz; i++) //每一趟冒泡排序 {原创 2021-06-07 13:25:39 · 570 阅读 · 0 评论 -
C语言实现简易计算器
通过C语言实现一个简易的计算器计算器可实现加减乘除等一系列运算方法一: 1.程序总体使用switch语句实现多分支选择switch (input){ case 1: printf("请输入两个操作数\n"); scanf("%d%d", &x, &y); Add(x, y); break; case 2: printf("请输入两个操作数\n"); scanf("%d%d", &x, &y); Sub(x,...原创 2021-05-30 18:17:02 · 26365 阅读 · 6 评论 -
整形有序数组查找--遍历法与折半法/二分法
通过C语言来实现数组元素的查找查找数组元素,如果找到了,就输出它的下标,找不到的话就输出“找不到这个数”遍历法将所要查找的数与数组中从第一个元素开始进行比较,若遍历完数组所有元素都没有与要找的的元素相同,则数组中不存在这个数;若在遍历中,有相同的元素存在,则存在这个数。因为进行比较是一个不断重复的过程,所以这里用循环#include<stdio.h>int main(){ int arr[] = { 1,2,3,4,5,6,7,8,9,10 }; int i; i原创 2021-03-30 13:23:26 · 216 阅读 · 0 评论 -
C语言实现电脑自动关机程序--可以用来恶搞舍友电脑
实现电脑关机主要用到shutdown命令shutdown命令shutdown-a 取消关机shutdown -s 关机shutdown -f 强行关闭应用程序shutdown -m \\计算机名 控制远程计算机shutdown -i 显示“远程关机”图形用户界面,但必须是Shutdown的第一个参数shutdown -l 注销当前用户shutdown -r 关机并重启shutdown -s -t 时间 设置关机倒计时shutdown -r -t 时间 设置...原创 2021-03-24 21:37:15 · 1337 阅读 · 0 评论 -
求解素数的方法--不断优化--寻找最优解
对于一个问题的解决,我们通常都是去寻找它的最优解,写出一个解决方法,还要去不断优化,让程序的执行效率更高对于求解素数,我们可以有很多方法来解决1.直接在这个数的范围内用所有数进行试除(效率比较低) #include<stdio.h>int main(){ int i; int j; int count = 0; for (i = 2; i <= 100; i++) { for (j = 2; j <= i -原创 2021-03-23 00:17:50 · 370 阅读 · 0 评论 -
C语言实现猜数字游戏
猜数字游戏有一个简单的游戏首页 在每次玩家开始游戏时可产生随机数 在玩家输入所猜数字时,提示猜大了还是猜小了 在玩家输入所猜数字并确认时进行清屏//C语言实现猜数字游戏#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<math.h>#include<stdlib.h>int main(){ int input; //存储选择的选项对应的数原创 2021-03-23 12:54:19 · 233 阅读 · 0 评论