随笔分类 - C语言
摘要:因为strlen函数会以“\0”为结束,读到“\0”即结束了,也就是只统计了A,一个长度。 拓展:如果是strlen("A\0123\0ASD");统计结果为3,因为\012为八进制数10所对应的ASCII嘛值,共有A、\012、3三个字符被统计!
阅读全文
摘要:参考:http://blog.csdn.net/dazhong159/article/details/7906916 什么是二叉树? 二叉树是每个节点最多有两个子树的树结构 节点:二叉树中每个点 度:节点子树的个数 叶子节点:度为0的节点 分支节点:度不为0 的节点 中序:是先访问左子树,再访问根,
阅读全文
摘要:打印结果: tmp.c:12:4: error: assignment of read-only location ‘*b’ *b = 3; const INT a; const int* b; 这两个结果是不一样的,第一个a的值不能改变,第二个*b的值不能改变
阅读全文
摘要:计算机的带符号数用补码表示的优点: 负数的补码与对应正数的补码之间的转换可以用同一种方法,求补运算完成,可以简化硬件。 可将减法变为加法,这样减法就可以用加法器进行计算了。 两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。
阅读全文
摘要:http://blog.csdn.net/hguisu/article/details/7776068/ http://blog.sina.com.cn/s/blog_77795cad01011txt.html 时间复杂度 快速排序算法的时间复杂度为什么是O(NlogN),还有O(N^2) 参考 h
阅读全文
摘要:参考:http://www.cnblogs.com/tgycoder/p/4218696.html int main(void){ /* 一个字节 无符号范围为[0, 255],有符号范围为[ -128,0],[0,127] */ signed char b = -120; signed short
阅读全文
摘要:首先a是一个数组名,当看到这个a与&a时,一般我们的理解都是这个数组的首地址。没错,如果加上打印的话,确实两个值是一样的。 不过&a是整个数组的首地址,a则是数组首元素的地址,虽然值一样,但是意义却不相同。 在此之前有必要先看下c程序在内存中的分布图。 示例代码: #include <stdio.h
阅读全文
摘要:参考:http://blog.csdn.net/wenhui_/article/details/6889013 重入:重新进入 区别:多个任务能否同时调用一个函数,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象 满足下面条件之一的多数是不可重入函数:(1)使用了静态数
阅读全文
摘要:中断是嵌入式系统中重要的组成部分,但是在标准C中不包含中断。许多编译开发商在标准C上增加了对中断的支持,提供新的关键字用于标示中断服务程序 (ISR),类似于__interrupt、#program interrupt等。当一个函数被定义为ISR的时候,编译器会自动为该函数增加中断服务程序所需要的中
阅读全文
摘要:参考 http://blog.csdn.net/sddzycnqjn/article/details/7289712
阅读全文
摘要:参考 http://blog.csdn.net/wzy198852/article/details/7246836 1.语法 sizeof有三种语法形式,如下:1) sizeof( object ); // sizeof( 对象 );2) sizeof( type_name ); // sizeof
阅读全文
摘要:定义:词义,易变的, 实质是直接存取原始内存地址 (1)作用 volatile关键词影响编译器编译的结果,用 volatile声明的变量表示该变量随时可能发生变化,与该变量有关的运算,不要进行编译优化,以免出错 1.告诉编译器不要做任何优化 2.用volatile定义的变量会在程序外被改变,每次都必
阅读全文
摘要:(1)strcpy函数没有处理内存重叠的情况,所以内存重叠时使用这个函数会让程序崩溃 函数原型为: char * strcopy(char *dst, char *src, int n) { char *addr = dst; assert((dst != NULL) && (src != NULL
阅读全文
摘要:(1)如何在不使用第三个变量的情况 下交换变量值 第一种: 算术运算:把a、b看做数轴上的点,围绕两点间的距离来进行计算 int a,b;a=10;b=12;a=b-a; //a=2;b=12b=b-a; //a=2;b=10a=b+a; //a=12;b=10 具体过程:第一句“a=b-a”求出a
阅读全文
摘要:打印:a = 5 static定义变量,函数调用后,a的值还是不变 上面这个是我本来理解的功能,static定义变量后,调用函数,值会被改变,但是值没有变,把static的作用理解错了 打印: a = 10 a = 9 static 在函数调用中就表示只定义一次,再次调用函数时,不再执行此赋值语句
阅读全文
摘要:(1) char *a = "abc"; char *b; b = a; printf("%s\n", b); 打印:abc a b 都是字符串指针,拷贝的是字符串地址,而不是字符串本身 (2) 打印:abc 数组名代表数组的首地址,即第一个元素的首地址 (3) 打印:abc)F��P� 数组a没
阅读全文
浙公网安备 33010602011771号