关于指针-3 下面我们了解一下赋值语句 x=y的含义。通过这个语句,我们了解一下地址的含义。x=y;其实就是将变量y的值赋给x。但是单片机在运行中过程十什么。这个可以通过实验获得。在keil中输入以下代码。#includeint main(void){volatile unsigned char x,y;x=10;y=11;x=y;}编译以后... 2023-06-13 C语言单片机指针文章基础课C语言基础
关于指针4——值的传递 在程序设计时,有时需要传递地址,有时需要传递值。有个例子在谭浩强的书中就有明确的介绍。我们来复述一下这段代码。void swap(unsigned char a, unsigned char b){unsigned char c;c=a;a=b;b=c;} int main(void){unsigned char x,y;x=100;y=200;swap(x,y); return 0;... 2023-06-13 C语言指针值的传递文章基础课C语言基础
两段代码的区别 A:void Display(unsigned char FirstBit,unsigned char Num){unsigned char i;for(i=0;i 2023-06-13 代码延时文章基础课C语言基础
AD采集一段代码分析 昨天见到一位朋友的AD采集代码,这段代码在他们公司产品中已经使用的。当然是正确的。我们来分析一下他的实现方法。选择采集端口,采集端口电压,保存在 temp_l、 Min_Value、 Max_Value中采集端口电压7次,每次采集的值与 Min_Value、Max_Value比较。如果小于 Min_Value将其值... 2023-06-13 代码AD采集文章基础课C语言基础
C语言与单机--循环do whille 这条语句与while语句非常相似。不同的是这是“出口判断的”循环语句,while是入口判断语句。也就是如果条件不成立while语句循环体一次都不会执行,而do...while()至少会执行一次。最简单我们看一个例子int main(void){int i=12;while(i<11){printf("haha");i++;... 2023-06-13 C语言单片机while文章基础课C语言基础
C语言与单机--循环for编译器实现 for语句功能如此强大,为了建议不了解for语句的实现的原理。我们参考一下keil实现方法。通过观察keil的汇编结果来了解for. 为了观察for语句的框架,我们尽可能把程序写的简单。#include#includeint main( ){volatile char m=0;volatile char n=0;for(m=0;m<100;m++)n=m;ret... 2023-06-13 C语言单片机for语句文章基础课C语言基础
C语言与单机--选择语句switch switch语句是多项选择语句,if...else..嵌套也是多通道选择语句。他们的之间有区别吗?有!但是在有些时候可以相互替换。我们来看一下switch的语句结果switch(表达式){case label1:statement1break;case label2:statement2break;case label3:statement3break;.............cas... 2023-06-13 单片机C语言switch文章基础课C语言基础
C语言与单机--选择语句if-else嵌套 if......else语句只能有两个分支执行路径。即非此即彼。就是茶与咖啡二选一。它的确解决了我们在实际工作遇到的很多问题。我一直是一个悲观主义者,问题总比办法多。 因为办法不会凭空有的,有问题才会有办法。但是总会有问题产生的。假如三选一、者四选一、五选一等等。怎... 2023-06-13 C语言单片机if——else语句文章基础课C语言基础
C语言与单机--选择语句if-else if-els 是一种选择执行语句,2选一。 如果............就..........................否则.....................具体基本结构形式如下:if(表达式) {表达式处理处理方法}else{表达式不成立处理方法。}“表达式”的结果如果为0,即表明表达式不成立。非0表明表达式成... 2023-06-13 C语言单片机ifelse语句文章基础课C语言基础
C语言与单片机--认识C语言 什么是C语言?回答这个问题的人很多,据多人从贝尔试验室说起。历史问题我们就不提啦。从事我们这个行业的人只要记住符合C语言就是我们书写代码的规范就可以了。所有C语言的学习书籍也就三大类:1,就是介绍C语言规范。2是作者对C语言理解。3,C语言在某个行业的具体应用。认识C语... 2023-06-13 C语言程序代码文章基础课C语言基础
C语言中,static的作用? 在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)第一个作用:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容#i... 2023-06-13 C语言static程序代码文章基础课C语言基础
硬件C语言教程开篇——我对c语言的理解 对于没有编程经历的人来说,初次听说 C语言 这个概念是一种很奇怪的感觉,C语言是什么,是一种外星语言么?为什么叫C语言呢?它是哪国说的话呢?那“语言”是个什么概念呢?百度百科上解释:人类将传递信息内容的工具,称之为:语言。如:计算机语言、植物的语言、动物的语言与人类... 2023-06-13 C语言文章基础课C语言基础
c语言地址对齐的一些介绍 什么是地址对齐?现代计算机中内存空间都是按照字节(byte)划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排列,这就是对齐... 2023-06-13 C语言文章基础课C语言基础
C语言的一些高级议题 C语言之回调函数先来看下函数指针的的基础知识,函数指针,顾名思义,就是指向函数的指针,声明方法如下:int func(int); //函数原型int (*pfunc)(int) = & func; //创建函数指针pfunc,并指向函数func这里的&操作符可有可无,因为函数名本身就是一个地址。回调函数是一个程序员不能显... 2023-06-13 C语言指针函数文章基础课C语言基础
c/c++中结构体引用中箭头->与点.的区别 首先介绍一下C++中的结构。对于一个结构来说,struct MyStruct{int member_a;};如果有个变量MyStruct s,那么使用其中的成员元素时可以用s.member_a = 1;如果采用指针方法访问,比如MyStruct * ps,那么同样的访问就必须使用如下形式:(*ps).member_a = 1;或者ps->member_a = 1;c+... 2023-06-13 结构体&ampgt点区别IT文章基础课C语言基础
C#常用的几种工具编写整合中。。。 将Label的数据更新double m_PosCum=0.02;PosCum.Text = m_PosCum.ToString();你可以除按钮所在窗体再新建一个窗体,使按钮的事件跳转到这个新的窗体,在新建的那个窗体页面进行设计就可以了。Form2 f =new Form2(); f.Show();f.Hide();//窗体隐藏this.Visible = false;//... 2023-06-13 CComboBox文章基础课C语言基础
经典C语言程序设计100例11-20 【程序11】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....2.程序源代码:main(){long f1,f2;int i;f1=f2=1;for(i=1;i<=20;i+... 2023-06-13 经典C语言程序设计100例11-20文章基础课C语言基础
【博客大赛】《C和指针》摘抄整理型笔记一 1.数值是以引用(reference)形式进行传递,也就是传址调用;标量和常量按值(value)传递。所有传递给函数的参数都是按值传递的,但是,数组名作为参数时就会产生按引用传递的效果。/*个人观点:数组其实是指针应用的一个特例,所以编译器没有必要去检查数组下标是否越界,当然,这也提高了编译... 2023-06-13 C和指针文章基础课C语言基础
【博客大赛】《C和指针》摘抄整理型笔记二 /*读书笔记类型多种多样,有摘抄型的,有感想型的,有批注型的,有摘要型的……现在正在研读《C和指针》,其中有很多我认为必要的知识点,摘抄并简单整理了一下,记录在这里。*/11.位操作技巧:value |= 1 << bit_number;/*指定位置1*/value &= ~( 1 << bit_number ); /*指... 2023-06-13 C和指针文章基础课C语言基础
【博客大赛】《C和指针》摘抄整理型笔记三 /*读书笔记类型多种多样,有摘抄型的,有感想型的,有批注型的,有摘要型的……现在正在研读《C和指针》,其中有很多我认为必要的知识点,摘抄并简单整理了一下,记录在这里。*/19.在C中,在几乎所有使用数组名的表达式中,数组名的值是一个指针常量,也就是数组第一个元素的地... 2023-06-13 《C和指针》文章基础课C语言基础
【博客大赛】《C和指针》摘抄整理型笔记四 29. memxxx函数提供了类似字符串函数的功能,但它们可以处理包括NUL字节在内的任意字节。这些函数都接受一个长度参数。memcpy从源函数向目标函数复制长度参数指定的字节数。memmove函数执行与memcpy相同的功能,但它能正确处理源参数与目标参数出现重叠的情况。memcmp函数比... 2023-06-13 C和指针文章基础课C语言基础
【博客大赛】《C和指针》摘抄整理型笔记五 33.对指针进行解引用操作之前,检查一下它是否有效是非常重要的。(所谓“解引用”,即“*”操作,英文为dereference,其实意思就是取指针指向的地址的内容。)34.要确定结构中某个成员的实际位置,应考虑边界对齐因素,可以使用offsetof宏(定义于stddef.h)。offsetof... 2023-06-13 C和指针文章基础课C语言基础
关于指针5-地址的传递 接着上一小节的内容,我们继续讨论一下地址传递,这个在谭浩强的书中介绍的比较详细。请大家参考一下。如果觉得有必要,仔细揣摩一下。其实非常简单。谭浩强的书我已经找不到了。但是代码可以复述一下。void swap(unsigned char *pA,unsigned char *pB){volatile unsigned cha... 2023-06-13 C语言指针地址传递文章基础课C语言基础
为什么C语言中int的表示范围是-32768~32767 本文谈论的都为有符号数。这得从二进制的原码说起:二进制原码最大为0111111111111111=215-1=32767二进制原码最小为1111111111111111=-(215-1)=-32767正0和负0:0000000000000000=1000000000000000=0所以,二进制原码表示时,范围是-32767~-0和0~32767,因为有两个零的存在,所以不同的... 2023-06-13 C语言文章基础课C语言基础
嵌入式初学者如何学习嵌入式C高级编程? 很多在学习嵌入式开发的朋友不知道学习嵌入式开发从何学起?下面笔者就为大家推荐一个很好的学习步骤。首先学习嵌入式开发的第一步是学习嵌入式C高级编程,在嵌入式领域中大部分开发都会用到C语言。一个精通C语言程序设计的程序员,可以很容易地从事Linux、WinCE、Vxworks、靋... 2023-06-13 嵌入式C语言文章基础课C语言基础