刷新
学嵌入式C语言,看这一篇就够了(2)

博主头像 基本概念 程序框架分析 搭建一个主体框架,包含头文件、程序入口、输出函数、程序结束 #include <stdio.h> int main(void) { //输出字符串hello world并且进行换行 printf(“hello world\n”); return 0; } 注意:在学习编程语言 ...

学嵌入式C语言,看这一篇就够了(1)

博主头像 嵌入式技术知识结构 语言的基本概念 什么是语言 语言是人类进行沟通和交流的工具 语言是一套具有共有规则的指令,指令可以通过文字、嗅觉、触觉等方式传递 xx of xx --> A of B --> B 的 A 语言的目的 语言的目的就是为了实现人类之间的交流,当出现计算机之后,人类需要传递指令给计算 ...

GDB调试(一)

GDB调试 GDB简介 GDB的功能 GDB(GNU Debugger)是用于调试 C、C++ 等语言的强大工具。它允许开发者执行以下操作: 启动程序并按照预期条件暂停(如断点处)。 检查程序中的变量和内存状态。 单步执行代码,观察每一步的变化。 修改运行中的变量值以测试不同的假设。 调试程序崩溃、 ...

位运算

博主头像 按位逻辑运算 取反 ~ 一元运算符~把1变为0,把0变为1 ~(10011010) 01100101 val = ~val 按位与 & 二元运算符&通过逐位比较两个运算对象,生成一个新值。对于每个位,只有两个运算对象中相应的位都为1时,结果才为1 (10010011) & (00111101) (0 ...

一篇解决编译原理大作业,基于Flex、Bison设计编译器(含语法分析树和符号表)

博主头像 1.工具简单介绍 Flex 和 Bison 是编译器开发中常用的两个工具,分别用于生成词法分析器和语法分析器。它们通常一起使用,共同完成源代码的词法分析和语法分析工作。 Flex: Flex通过读取一个规则文件(通常是.l文件),这个文件中定义了一系列的模式和对应的动作。模式用于匹配输入文本中的特定 ...

菜单

博主头像 准备写一个基于C的扫雷游戏,这是第一篇,内容:扫雷的主菜单 思路 显示菜单->用户选择->判断用户选项 实现 显示菜单 首先在main函数内显示菜单,菜单显示部分实现在 MainMenu 函数内 int main(void) { while (true) { int iChoose = -1; Ma ...

C语言总笔记

博主头像 title: "1" date: 2025-02-14 21:17:00 tags: "1" hidden: false top: false # 是否置顶文章(如果主题支持) layout: post # 文章布局类型,默认为 post,也可以设置为 page 等 优先级最高的并不是真正意思上的运 ...

指针, C语言的精髓

博主头像 指针, C语言的精髓 莫队先咕几天, 容我先讲完树剖 (因为后面树上的东西好多都要用树剖求 LCA, 树剖求 LCA 比倍增求 LCA 常数小). 什么是指针 保存变量地址的变量叫做指针. 这是大概的定义, 但是Defad认为这个定义不太好理解, 所以我们先不看. 我们的电脑里都有随机存储器 RAM ...

DS1302时钟

博主头像 一、使用的MCU为STC89C52RC 二、DS1302驱动 1 #include <REGX52.H> 2 #include "DS1302.h" 3 #include "LCD1602.h" 4 #include "Delay.h" 5 #include "Timer0.h" 6 #includ ...

USB-TTL连接ESP8266不识别串口/串口助手回复乱码

博主头像 做项目的时候新上手了ESP8266,模块测试的时候发现串口软件识别串口不稳定,换多个串口助手后仍无法解决,疑似硬件问题 此时接线为 后查询得知USB-TTL的3V3供电不满足ESP8266使用,疑似电流不够,但手边没仪器无法求证 可考虑跳线帽短接3V3与VCC,模块接5V供电,询问商家此操作可行,短 ...

用函数实现模块化程序设计习题

博主头像 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输入 //写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输入 #include <stdio.h> int getGCD(int a, int ...

关于变量的声明和定义、内部函数和外部函数

博主头像 关于变量的声明和定义 一个函数一般由两部分组成:声明部分和执行语句。声明部分的作用:是对有关的标识符(如变量、函数、结构体、共用体等)的属性进行声明。对于函数而言,声明和定义的区别是明显的,函数的声明是函数的原型,而函数的定义是对函数功能的定义。对被调用函数的声明是放在主调函数的声明部分中的,而函数 ...

变量的存储方式和生存期

博主头像 变量的存储方式和生存期 动态存储方式与静态存储方式 从变量的作用域(即从空间)的角度来观察,变量可以分为全局变量和局部变量 从变量存在的时间(即生存期)来观察:有的变量在程序运行的整个过程都是存在的,而有的变量则是在调用其所在的函数时才临时分配存储单元,而在函数调用结束后该存储单元就马上释放了,变量 ...

局部变量和全局变量

博主头像 局部变量和全局变量 局部变量 定义变量可能有3种情况: 在函数的开头定义 在函数内的复合语句内定义 在函数的外部定义 在一个函数内部定义的变量只在本函数范围内有效,也就是说只有在本函数内才能引用它们,在此函数以外是不能使用这些变量的 在复合语句内定义的变量只在本复合语句范围内有效,只有在本复合语句内 ...

数组作为函数参数

博主头像 数组作为函数参数 调用有参函数时,需要提供实参,实参可以是常量、变量或表达式 数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方,都可以用数组元素代替,因此,数组元素也可以用作函数实参,其用法与变量相同,向形参船体数组元素的值。此外,数组名也可以作实参和形参,传递的是数组第一个元素的地址 数 ...

函数的嵌套调用以及函数的递归调用

博主头像 函数的嵌套调用 C语言的函数定义是互相平行的、独立的,也就是说,在定义函数时,一个函数内不能再定义另一个函数,也就是不能嵌套定义,但是可以嵌套调用函数,也就是说,在调用一个函数的过程中,又调用另一个函数 如上执行过程: 执行 main 函数 遇到函数调用的语句,调用函数 a ,流程转到 a 函数 执 ...

123···9>