- 博客(23)
- 资源 (13)
- 收藏
- 关注
原创 inline 内联函数
inline,内联函数,在运行的时候,不会作为函数处理,也就是不会实际上去做函数调用,而是将调用处展开 比如: inline int fun(){cout"hello" 调用: fun(); 将会展开: {cout"hello" 只适合于简单的函数,不适合太复杂的函数,因为不进行函数调用
2014-04-10 16:12:30 672
转载 多线程与fork
多线程程序与fork()多线程程序里不准使用forkUNIX上C++程序设计守则3准则3:多线程程序里不准使用fork在多线程程序里,在”自身以外的线程存在的状态”下一使用fork的话,就可能引起各种各样的问题.比较典型的例子就是,fork出来的子进程可能会死锁.请不要,在不能把握问题的原委的情况下就在多线程程序里fork子进程.能引起什么问题呢
2014-04-10 15:34:30 621
转载 TCP/IP三次握手与四次挥手
TCP/IP三次握手与四次挥手 2013-07-22 09:15:12分类: 网络与安全原文地址:TCP/IP三次握手与四次挥手 作者:scq2099yt一、TCP报文格式 TCP/IP协议的详细信息参看《TCP/IP协议详解》三卷本。下面是TCP报文格式图:图1 TCP报文格式 上图中有几个字段需要重点介绍下
2014-04-10 14:59:31 607
转载 宏定义
宏定义(转) 2010-06-29 22:36:46| 分类: 高性能程序设计优| 订阅【摘要】本节介绍了嵌入式系统程序设计中采用宏定义进行常量定义的必要性。说明了宏常量定义的基本规则以及如何采用依赖关系定义宏常量来保证其可移植性和裁减性。最后介绍了如何利用宏定义实现掩码偏移量等来高效的进行位操作。 【关键词】嵌入式,可移植性,宏定义,依赖关系,
2014-04-09 20:24:24 741
原创 TCP建立连接为什么是三次握手而不是两次握手
《计算机网络》(谢希仁 译)中讲了原因:1.采用两次握手,那么若Client向Server发起的包A1如果在传输链路上遇到的故障,导致传输到Server的时间相当滞后,在这个时间段由于Client没有收到Server的对于包A1的确认,那么就会重传一个包A2,假设服务器正常收到了A2的包,然后返回确认B2包。由于没有第三次握手,这个时候Client和Server已经建立连接了。再假设A1包随后
2014-04-09 19:47:04 1479
转载 数组a[N],存放了1 至N-1 个数,其中某个数重复一次
数组a[N],存放了1 至N-1 个数,其中某个数重复一次 数组a[N],存放了1 至N-1 个数,其中某个数重复一次。写一个函数,找出被重复的数字.时间复杂度必须为o(N)函数原型:int do_dup(int a[],int N) 方法一:[cpp] view plaincopy//好算法,因为第二个重复的数字其位置肯
2014-04-08 20:52:22 1950
转载 自加自减
自加自减学习#include void main() /*主函数*/{ int a,b,c,d; a=5; b=5; c=(a++)+(a++)+(a++); d=(++b)+(++b)+(++b); printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);}复制代码
2014-04-08 19:48:40 981
转载 linux C程序员 经典面试题(非常经典)
linux C程序员 经典面试题一想成为嵌入式程序员应知道的0x10个基本问题:预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1) #define
2014-04-08 15:54:46 15910
原创 malloc(0)参数为0的情况,malloc分配最小空间,free真的释放内存了?
malloc()参数为0的情况 问题来自于《程序员面试宝典(第三版)》第12.2节问题9(这里不评价《程序员面试宝典》,就题论题):下面的代码片段输出是什么?为什么?char *ptr;if((ptr = (char *)malloc(0))==NULL) puts("Got a null pointer");else puts("Got a vali
2014-04-08 15:48:21 2224
转载 (*(volatile unsigned int *))详解
(*(volatile unsigned int *))详解 在看 vivi 代码时,Nand_read.c 文件中有下面一段 #define __REGb(x) (*(volatile unsigned char *)(x)) #define __
2014-04-08 14:51:16 2002 1
转载 ifconfig用法详解
ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。也可以把 它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址语 法:ifconfig [网络设备][down up -allmulti -arp -promisc][ad
2014-04-08 10:29:22 4404
原创 实参和其对应的形参各占用独立的存储单元?
关于函数形参的问题?以下正确的说法是:在C语言中( )。A. 实参和其对应的形参各占用独立的存储单元B. 实参和与其对应的形参共占用一个存储单元C. 只有当实参和与其对应的形参同名时才共占用存储单元D. 形参是虚拟的,不占用存储单元答案:A
2014-04-07 20:59:04 77785 5
转载 halt和shutdown
用halt和shutdown命令关闭linux 2008-10-23 09:35:46分类: LINUXhalt指令用来关闭系统,然后再通知内核是停止、重启、还是关闭电源。必要参数具体说明如下:-d 不在wtmp中记录-f 强制关机或者重启,不调用shutdown-h 让硬件保持standby的状态-i 关闭系统前先关闭网络系
2014-04-07 20:48:59 1019
原创 mysql 基础笔记
创建数据库:create database 数据库名 [其他选项];查看已有数据库:show databases;mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql
2014-04-07 15:12:06 897
转载 ARM 浮点运算,软浮点,硬浮点
ARM 浮点运算作者:程老师,华清远见嵌入式学院讲师。很多时候我们要处理的数据,不仅仅是整数和字符串,还有浮点数即小数。在多媒体数据处理方面表现的更多。是不是所有的CPU都支持,浮点运算呢?答案:不是。我们常常听到赢浮点和软浮点,这些到底说的是什么呢?下面我们就来一探究竟吧。在这里我们说的是ARM核浮点运算。(1)硬浮点(hard-float)编译器将代码直接编译成硬件浮点协处
2014-04-06 18:54:51 14805 1
原创 指针笔试题
区分指针数组的好方法 2008-04-28 01:17:57| 分类: Linux & C|举报|字号 订阅a) 一个整型数(An integer) b)一个指向整型数的指针( A pointer to an integer) c)一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to a
2014-04-06 18:06:16 1913
转载 linux send与recv函数详解
linux send与recv函数详解1 #include 2 ssize_t recv(int sockfd, void *buff, size_t nbytes, int flags);3 ssize_t send(int sockfd, const void *buff, size_t nbytes, int flags);recv 和send的前3个参数
2014-04-06 16:27:55 678
原创 关于一道枚举笔试题(枚举的初始值赋值)
enum eEnum{eBase,e1,e2,e3 = 0,e4};void test(){cout cout cout cout }输出结果为:______A. 0 2 0 4 B. 0 2 0 1C. 0 0 0 1 D. -3 -1 0 1
2014-04-06 16:06:23 1609
转载 面试总结,TCP和UDP分析
面试总结,TCP和UDP分析分类: linux系统2012-10-21 20:28 520人阅读 评论(0) 收藏 举报主要参看2篇博文:http://blog.csdn.net/dog250/article/details/6612496http://blog.csdn.net/dog250/article/details/6896949
2014-04-06 14:06:38 858
转载 多进程和多线程的区别,详细
多进程和多线程的区别分类: linux系统2012-10-20 18:07 954人阅读 评论(0) 收藏 举报多线程面试编程图像处理任务web服务关于多进程和多线程,教科书上最经典的一句话是“进程是资源分配的最小单位,线程是CPU调度的最小单位”。这句话应付考试基本上够了,但如果在工作中遇到类似的选择问题,那就没有那么简单了,选的不好,会让你深受其害。所以他也是面
2014-04-06 14:04:13 896
原创 队列,栈,二叉树
1.两个栈实现一个队列:建立两个栈STACK1,STACK2,入队就是PUSH—>stack1,出队就是pop->stack2,如果出队时stack2为空,stack1全部pop再push到stack2//---------------------------------------------------------2.两个队列实现一个栈:我们把queue1的n-1个元素放到qu
2014-04-06 09:27:41 1373
原创 插入排序,冒泡排序,选择排序,快速排序
1.插入排序:取出待排序的元素放到一个temp,temp循环跟待排序的左边元素依次比较,比temp大就右移,小就把temp放入其后面,结束一轮循环for(i=first+1;i=first)&&(array[j]>temp)){array[j+1]=array[j];j--;}array[j+1]=temp;=============================================
2014-04-06 09:21:24 553
原创 单链表的操作
//--------------------------------------------------------输出单链表最后N项:定义两个指针p1,p2,相差N个,同时前进,p2到头时,p1就是想要的节点位置。要考虑链表长度//--------------------------------------------------------找出单链表中间项:定义两个指针p1,p2。
2014-04-06 09:17:03 648
freescale imx bootlets bootstream elftosb介绍
2015-10-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人