
C/C++
文章平均质量分 53
duyouhua
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
volatile修饰符
volatile修饰符告诉编译程序不要对该变量所参与的操作进行某些优化。在两种特殊的情况下需要使用volatile修饰符:第一种情况涉及到内存映射硬件(memory-mapped hardware,如图形适配器,这类设备对计算机来说就好象是内存的一部分一样),第二种情况涉及到共享内存(shared memory,即被两个以上同时运行的程序所使用的内存)。...原创 2012-02-16 20:48:32 · 115 阅读 · 0 评论 -
文件大小换算
char* file_size_to_char(char *pstr, unsigned long long len){ double size; if( pstr == NULL ) return NULL; pstr[0] = 0; if( len < 1024 ) /* < 1K */ { sprintf(pstr, "%lld BYTE", len); } ...原创 2012-08-13 13:36:13 · 169 阅读 · 0 评论 -
ip设置方法
static int ip_config_system(const IP *ip){ int ret = 0; char cmd[128]; strcpy(cmd, "ifconfig eth0 down"); system(cmd); strcpy(cmd, "route del default"); system(cmd); strcpy(cmd, "ifconfig "); strca...原创 2012-08-13 13:15:41 · 139 阅读 · 0 评论 -
iso文件的mount方法
char mih[1024]; memset(mih, 0, sizeof(mih)); sprintf(mih,"umount %s",mount_isopath); system(mih); memset(mih, 0, sizeof(mih)); sprintf(mih,"losetup -d /dev/loop0"); system(mih); memset(...原创 2012-08-13 13:13:30 · 328 阅读 · 0 评论 -
(转)C/C++面试题大汇总 .
最近因为找工作,收集了很多C语言方面方面的面试题以及答案。现在新工作搞定了,决定把这些资料发出来,送给有需要的朋友,免得再象我一样到处搜寻,实在辛苦。 发布之前先申明两点: 1 所有资料来自网络(主要是优快云),本人只是收集和转发。 2 所有问题解答(尤其是代码)只是参考,不保证正确。 先发基本问题,再发编程问题.......... 想成为嵌入式程序员应知道的0x10个基本问题...原创 2012-02-26 09:57:38 · 197 阅读 · 0 评论 -
堆和栈的区别
经常有问堆和栈的区别的,贴一篇chinaunix blog上的文章吧,写得还可以 原文blog.chinaunix.net/u1/54733/showart_433002.html 堆和栈的区别 堆(Heap)栈(Stack) 一个由c/C++编译的程序占用的内存分为以下几个部分 : 1、栈区(stack) —— 由编译器自动分配释...原创 2012-02-26 08:15:50 · 109 阅读 · 0 评论 -
解析大端模式和小端模式
作者:王正伟,华清远见嵌入式学院讲师。 一、概念及详解 在各种体系的计算机中通常采用的字节存储机制主要有两种: big-endian和little-endian,即大端模式和小端模式。 先回顾两个关键词,MSB和LSB: MSB:Most Significant Bit ------- 最高有效位 LSB:Least Significant Bit ------- 最低有效位...原创 2012-02-22 23:44:59 · 100 阅读 · 0 评论 -
一个通用Makefile的编写
作者:杨硕,华清远见嵌入式学院讲师。 我们在Linux环境下开发程序,少不了要自己编写Makefile,一个稍微大一些的工程下面都会包含很多.c的源文件。如果我们用gcc去一个一个编译每一个源文件的话,效率会低很多,但是如果我们可以写一个Makefile,那么只需要执行一个make就OK了,这样大大提高了开发效率。但是Makefile的语法规则众多,而且缺乏参考资料,对于初学者来说,写起来还是有...原创 2012-02-22 23:43:01 · 94 阅读 · 0 评论 -
经典的strcpy 的函数实现
作者:陶宁,华清远见嵌入式学院上海中心讲师。 char * strcpy(char * strDest,const char * strSrc); 1.不调用库函数,实现strcpy函数。 2.解释为什么要返回char *。 解说: 1.strcpy的实现代码 char * strcpy(char * strDest,const char * strSrc) ...原创 2012-02-22 23:31:43 · 132 阅读 · 0 评论 -
fprintf、printf、sprintf、fscanf、scanf、sscanf 格式化输入输出
格式化输入输出 1. fprintf(格式化输出数据至文件) 相关函数 printf,fscanf,vfprintf 表头文件 #include<stdio.h> 定义函数 int fprintf(FILE * stream, const char * format,.......); 函数说明 fprintf()会根据参数format字符串来...原创 2012-02-22 19:12:37 · 159 阅读 · 0 评论 -
C语言多线程的相关函数和实例
线程相关操作 一 pthread_t pthread_t在头文件/usr/include/bits/pthreadtypes.h中定义: typedef unsigned long int pthread_t; 它是一个线程的标识符。 二 pthread_create 函数pthread_create用来创建一个线程,它的原型为:...原创 2012-02-21 12:38:29 · 597 阅读 · 0 评论 -
C++中重写(override)与重载(overload)的区别
override是指在不同作用域中,多个函数原型完全一样,而实现却不同的函数。在C++中,经常发生在类的继承中。当基类中的某个方法是virtual或pure virtual函数时(当然访问权限必须是public或protected,因为从C++设计思想上来讲private的函数不会是virtual的,呵呵),其子类中对该方法的重新实现就属于override。使用时,可以通过基类的指针或者引用所指向...原创 2012-02-20 21:42:37 · 339 阅读 · 0 评论 -
堆和栈的区别
一、预备知识―程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)― 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) ― 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(stati...原创 2012-02-20 21:28:07 · 93 阅读 · 0 评论 -
C++虚函数和纯虚函数区别
1.纯虚函数声明如下: virtual ReturnType FunctionName(Parameter)=0; 纯虚函数一定没有定义,纯虚函数用来规范派生类的行为,即接口。包含纯虚函数 的类是抽象类,抽象类不能定义实例,但可以声明指向实现该抽象类的具体类的指针或引用。 2.虚函数声明如下:virtual ReturnType FunctionName(Parameter); 虚函数必须...原创 2012-02-20 21:22:07 · 973 阅读 · 0 评论 -
零值比较--BOOL,int,float,指针变量与零值比较的if语句
这是程序员面试的一道常见题,也是个C++基础问题。若只在大学里看过几本基础的编程入门书,看见这道题可能会觉得奇怪,不就是和0比较吗,直接拿出来比就是了,其实非也。下文引自google搜索结果,出处不详,高手可以无视,菜菜留下,记得做好笔记。首先给个提示:题目中要求的是零值比较,而非与0进行比较,在C++里“零值”的范围可就大了,可以是0, 0.0 , FALSE或者“空指针”。int型变量 n 与...原创 2012-02-20 20:55:39 · 129 阅读 · 0 评论 -
获取u盘设备的大小
unsigned long long usb_dev_get_free(char *dir) { struct statfs diskInfo; unsigned long long totalBlocks; unsigned long long totalSize; unsigned long long freeDisk; if( statfs(dir,&diskInfo) == 0...原创 2012-08-13 13:38:21 · 291 阅读 · 0 评论