部分参考了https://blog.csdn.net/wq3028/article/details/76204690 同时在电脑上进行验证 //温度,电磁阀传感器序号,方便数组定位 typedef enum { TC314=0, TC355, TC633, TC661, TC668, TC_NUM_MAX=5, //共5个温度 //电磁阀序号,方便数组定位,但要减去TC_NUM_MAX SOV311=5, SOV351, SOV461, SOV667, SOV455, SOV456, SOV45…
数组与指针涉及到数据在内存中的存储位置问题,数组由连续的存储单元组成,最低地址对应于数组的第一个单元,最高地址对应于数组的最后一个单元.指针是一种特殊的变量,该变量所存放的是内存地址,通过指针变量可访问所指向内存空间的内容. 4.1 一维数组 数组是一组相关的内存位置,它们都具有相同对的名称和类型.为引用数组中的特定位置或元素,需要指定数组名称和数组中特定的元素的位置编号,该编号即是数组下标.一维数组是只使用一组下标表示的数组. 4.1.1 一维数组的一般形式 一维数组的一般声明形式为: 数据类…
数组添加,当已经存在的一个数组时,如何往数组的"null"位置插入数据呢? 分析: 1.循环遍历数组元素,找出null的位置(下标) 2.设置一个变量,接收null位置下标值 3.赋值给此位置 4.循环输出数组看结果 public class AddNum { public static void main(String[] args) { //先定义一个数组 String[] phones={"iphone4","iphone4s","…
复习 1.do-while 1)语法 do{ //循环体 }while(<条件>); 2.while和do-while 1)while 先判断,后执行 初始条件不满足,一次都不执行 2)do-while 先执行,后判断 初始条件不满足,也会至少执行一次 3.for循环 1)语法 for(表达式1;表达式2;表达式3){ //循环体 } 4.循环流控 1)break 跳出,终止循环 2)continue 跳过本次循环,继续下次循环 5.循环嵌套 1)什么是循环嵌套 2)循环嵌套的注意事项 笔记…
稀疏数组 基本介绍 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组. 稀疏数组的处理方法是: 记录数组一共有几行几列,有多少个不同的值 把具有不同值的元素的行列及值记录在一个小规模的数组中,从而缩小程序的规模. 代码 package com.lin.SparseArray_0131; import java.util.Iterator; /** * 稀疏数组基本介绍 * 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组. * 稀疏…
这几天闲来无事,写了一个数组元素排序函数如下: #include <stdio.h> #include <stdlib.h> void ArraySort(int array[]); //数组元素从小到大排序 void ArraySort(int array[]) { int x,y,tmp; int i = sizeof(array) / 4; //获取数组长度为i ;x<i;x++) { for(y=x;y<i;y++) { if (array[x] > ar…
在原子的串口程序前加了几个数组定义,加了个对数组处理的函数,出现了HardFault_Handler的错误,不知道怎么解决!!! 因为局部变量是存放在栈区的,而全局变量在全局区(静态区),如果栈区较小,会产生溢出. 修改启动代码 Stack_Size      EQU   0x00000800 对 stack size 进行设定太小. 栈不能开的太大,除了变量需要,调用的函数参数也需要压栈. STM32出现HardFault_Handler故障的原因主要有两个方面: (1)内存溢出或者访问越界.…
C语言在声明数组时必须明确长度,如下两种方式: (一)  直接指定长度.如: int a[5]; (二) 声明时初始化元素.如:int a[]={1,3,5}. 如果,直接int a[]; 是不可以的.…
一.关于全局变量的定义.声明.引用: (只要是在.h文件中定义的变量,然后在main.c中包含该.h文件,那么定义的变量就可以在main函数中作为全局变量使用) 方法1: 在某个c文件里定义全局变量后,在其它c文件要用,则在要用c文件里用extern进行声明.说来轻巧但还是很多同学会出问题.请看下面注意事项方可解决! 注: (1)在定义全局变量时可同时将其初始化 (2)在用extern声明时不能再初始化,否则编译器报错 举例:有两个c文件分别为one.c和two.c,two中要用到one中的全局…
以前写单片机程序时总是把所用函数和变量都写在一个c文件里,后来遇到大点的项目,程序动则几千行,这种方式无疑会带来N多麻烦,相信大家都有所体验吧! 后来学会了在keil里进行模块化编程,即只把功能相同或相近的函数写在同一个c文件,这样以来一个项目往往由很多个c文件组成,但又带来一个问题即是某些c文件之间需要相互通信,一般我们都采用了全局变量,对吧.很多同学虽然知道在其它c文件里引用全局变量要用extern进行声明,但对此操作时往往思路不清,迷迷糊糊,经常遇到一堆错误提示,然后一个一个排除,既费时又…