C语言
cxs0913
天才
展开
-
计数执行次数的几种方法
1、满足条件执行,执行次数10次。1.1、从0开始递增static u8 a=0;while(a++<10)或者if(a++<10){执行语句}1.2、从10开始递减static u8 a=10;while(a–>0) 或者if(a–>0){执行语句}2、满足条件退出,执行次数10次。2.1、从0开始递增u8 a=0;while(1)...原创 2019-11-30 09:23:10 · 5486 阅读 · 1 评论 -
函数返回值为指针类型
char*GetString(void){char p[]= “hello world”;return p; //编译器一般将提出警告信息}void main(void){char *str = NULL;str = GetString();//str 的内容是垃圾,得不到想要的内容count<< str<<end;}在函数GetString()中定义...原创 2019-11-30 09:20:38 · 260 阅读 · 0 评论 -
C语言运算符优先级
1、优先级:C语言中,运算符的运算优先级共分为15 级。1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。结合性:C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z 则y 应先与“-”号结...原创 2019-11-30 09:19:06 · 12265 阅读 · 0 评论 -
C语言数字后面加UL,F后缀
就是 数字300000 三十万.U表示 unsigned 无符号.L表示 long 长整数.后缀大小写都可以, 可以单独使用(100U), 也可以组合使用(100UL)除了这两个之外, 还有一个后缀是F, 表示float, 但是F不可以和U组合, 因为浮点数没有unsigned这些后缀的作用是指明数据类型.因为单独写300000程序默认的类型是 int, 加上后缀就变成了unsigne...原创 2019-11-30 09:16:13 · 9897 阅读 · 1 评论 -
字符和字符串的处理
1、在单片机中,所有的字符和字符串的处理都是按字节(ASCII)、数组、指针来处理的。2、数字和英文字母对应的字节都是有规律,连续的。3、字符串的处理:两个是否相等、长度、转换成数字等操作可以参考正点原子的usmart_str.c文件。...原创 2019-11-30 09:14:59 · 129 阅读 · 0 评论 -
C语言数据类型
1、STM32编程中,常用的数据类型有:char(字符型),u8,u16 ,u32,但是在一些计算中,涉及到负数,小数,因此要用到:int,float,doulbe 型。其中u8——1个字节,无符号型(不能表达负数,如果用来当作负数的话,就出错了);u16 ——2个字节,无符号型(参看前边STM32f10x.h中的定义);u32——4个字节,无符号型;int——4个字节,有符号型,可以表达...原创 2019-11-30 08:33:22 · 2726 阅读 · 0 评论 -
蓝牙模块如何判断查询结果
1、如何对字符串进行判断u8 HC05_Get_Role(void){ u8 retry=0X0F;u8 temp,t;while(retry–){HC05_KEY=1; //KEY置高,进入AT模式delay_ms(10);u3_printf(“AT+ROLE?\r\n”); //查询角色for(t=0;t<20;t++) //最长等待200ms,来接...原创 2019-11-30 09:07:30 · 245 阅读 · 0 评论 -
位置式PID算法
1、typedef struct PID{float kp,ki,kd,PreErr,Pout,Iout,Dout,I_sum,Dt,Imax;}PID;//===============================================================================//姿态环角度环//input: pid—pid指针,EurDesir...原创 2019-11-30 09:02:24 · 1277 阅读 · 0 评论 -
二阶IIR滤波器系数计算方法
1、2、滤波器主要有以下几种:高通/低通/带通。下分别说明此三种滤波器的系统的求取方法。通常,对一个滤波器的要求,我们主要给出以下技术规格:中心频率frequency,采样频率sampleRate,增益dBgain,品质因数Q。为计算方便,先计算出以下几个值:A = sqrt[ 10^(dBgain/20) ]omega = 2pifrequency/sampleRates...原创 2019-11-30 08:56:39 · 15597 阅读 · 1 评论 -
大端模式和小端模式
1、大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。简单的说,低数据高地址,低地址高数据。小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地...原创 2019-11-30 08:51:31 · 417 阅读 · 0 评论 -
C语言中的原码、反码、补码
正整数部分:原码、反码和补码都一样;负数部分:原码和反码的相互转换:符号位不变,数值位按位取反原码和补码的相互转换:符号位不变,数值位按位取反,末位再加1;即补码的补码等于原码。C语言中,负数是按补码的方式存储的。...原创 2019-11-30 08:34:47 · 278 阅读 · 0 评论