C语言
broadCE
当你的才华还撑不起你的野心时,就应该静下心来学习; 当你的能力还驾驭不了你的目标时,就应该沉下心来历练。梦想不是浮躁,而是沉淀和积累。只有拼出来的美丽,没有等出来的辉煌。机会永远是留给最渴望的那个人,学会与内心深处的你对话,问问自己想要怎样的人生。
展开
-
C语言中##的作用
C语言中##的作用#define MCU_IO_TGL_PREP(port, pin) st( P##port##_##pin## ^= 1; ) ##这个运算符把两个语言符号组合成单个语言符号看例子:#define XNAME(n) x##n如果这样使用宏XNAME(8)则会被展开成这样x8 #define MCU_IO_TGL_PREP(port原创 2015-01-16 15:41:00 · 843 阅读 · 0 评论 -
C语言字节对齐详解
C语言字节内存对齐程序在运行时会将数据临时存放在内存中,芯片内核需要对这些数据进行计算,不断的读取内存以获得数据,并将计算结果写入内存。计算机体系经过若干年的发展,最终确定了以8bits作为其基本的存储单元——byte(字节),这是每个地址所对应的最小访问单元,在C语言中对应一个char型的变量,但是我们常用的字节有8字节、16字节、32字节等,所以在某些情况下字节对其就显得很原创 2015-11-28 14:35:16 · 940 阅读 · 0 评论 -
Static关键字深度解析
Static关键字深度解析全局变量(外部变量)的说明之前再冠以static就构成了静态的全局变量。全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。而静态全局变量则限制了其作用域,即只在定义原创 2015-10-26 16:05:23 · 657 阅读 · 0 评论 -
C语言算法之老鼠走迷宫
1.Algorithm Gossip: 老鼠走迷官(一)说明:老鼠走迷宫是递回求解的基本题型,我们在二维阵列中使用2表示迷宫墙壁,使用1来表示老鼠的行走路径,试以程式求出由入口至出口的路径。解法:老鼠的走法有上、左、下、右四个方向,在每前进一格之后就选一个方向前进,无法前进时退回选择下一个可前进方向,如此在阵列中依序测试四个方向,直到走到出口为止,这是递回的基本题。代码:原创 2015-05-06 14:50:55 · 3337 阅读 · 0 评论 -
const用法
const用法主要是防止定义的对象再次被修改,定义对象变量时要初始化变量 下面我就介绍一下几种常见的用法1.用于定义常量变量,这样这个变量在后面就不可以再被修改 const int Val = 10; //Val = 20; //错误,不可被修改 2. 保护传参时参数不被修改,如果使用引用传递参数或按地址传递参数给一个函数,在这个函数里这转载 2015-03-10 12:11:55 · 555 阅读 · 0 评论 -
C语言修饰词之violate
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值(From Memory),而不是使用保存在寄存器里的备份。 下面是volatile变量的几个例子:1) 并行设备的硬件寄存器(如:状态寄存器)2) 一个中断服务子程序中会访问到的非自动变量转载 2015-02-10 16:16:02 · 1547 阅读 · 0 评论 -
C 语言取整的几种方法
C 语言取整的几种方法 1.doublex; 2.printf("%d",int(x)) 取整; 3.printf("%d",int(x+0.5)) 四舍五入C语言总可以概括以下几种取整方法: 1、直接赋值给整数变量。如: int i = 2.5; 或 i = (int)2.5; 这种方法采用的是舍去小数部分。 2、C/C+原创 2015-01-16 15:31:06 · 44138 阅读 · 1 评论 -
C语言异或运算
C语言异或运算位运算符家族中,最常用的,某过于异或运算符。异或运算符是指:参与运算的两个值,如果两个相应位相同,则结果为0,否则为1。即:0^0=0, 1^0=1, 0^1=1, 1^1=0 例如:10100001^00010001=101100000^0=0,0^1=1可理解为:0异或任何数,其结果=任何数1^0=1,1^1原创 2016-07-30 10:32:53 · 99947 阅读 · 5 评论