在路上...

The development of life
我们一直都在努力,有您的支持,将走得更远...

站内搜索: Google

  :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

随笔分类 -  关于C/C++编程的学习与思考

1 2 下一页

摘要:名称:sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型:Int sscanf( string str, string fmt, mixed var1, mixed var2 ... );int scanf( const char *format [,argument]... ); 说明:sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者... 阅读全文
posted @ 2009-09-06 23:33 palam 阅读(278) 评论(0) 推荐(0)

摘要:一、typedef的用法 在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:typedef int INT;typedef int ARRAY[10];typedef (int*) pINT; typedef可以增强程序的可读性,以及标识符的灵活性,但它也有“非直观性”等缺点。二、#define... 阅读全文
posted @ 2009-09-06 23:23 palam 阅读(237) 评论(0) 推荐(0)

摘要:U32 downloadAddress = 0; void main(void){ void (*startp)(void); //定义一个函数指针 startp = (void (*)(void))downloadAddress; //把一个32位的数转换成指针,且指针类型为函数指针。然后把这个指针付给; 前面定义好的函数指针 (*startp)(); //用函数指针执行指定地址的代码} 阅读全文
posted @ 2009-09-06 23:19 palam 阅读(276) 评论(0) 推荐(0)

摘要:register i = rEP3_DMA_CON; for(i=0;i<10;i++);/* register是variable的一种存储类型,叫做寄存器型。一个变量要是被定义为这种类型,他就会被存储在通用寄存器中,所以存储速度快。这种类型的好处就是: 如果你需要频繁地使用该变量,可以避免多次从内存里进行存储,从而提高了运行效率.对编译器只是一种提示,是不是register还看编译器怎么... 阅读全文
posted @ 2009-09-02 23:16 palam 阅读(638) 评论(0) 推荐(0)

摘要:  多线程编程是一个很有意思也很有用的技术,使用多线程技术的网络蚂蚁是目前最常用的下载工具之一,使用多线程技术的grep比单线程的grep要快上几倍,类似的例子还有很多。希望大家能用多线程技术写出高效实用的好程序来 阅读全文
posted @ 2009-09-02 23:15 palam 阅读(293) 评论(0) 推荐(0)

摘要:/*守护进程实例子*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>#include <sys/types.h>#include <unistd.h>#include <sys/wait.h>#define MAX... 阅读全文
posted @ 2009-09-02 23:13 palam 阅读(1057) 评论(0) 推荐(0)

摘要://守护进程的调试方法是通过linux的syslog即系统日志服务来实现的。程序运行信息将输入到"/var/log/messages"//系统日志文件中。syslogd的配置文件为/etc/syslog.conf。该机制提供了三个syslog函数分别为openlog/syslog/closelog//openlog:用于打开系统日志服务的一条连接//syslog:向日志文件中写入消息//close... 阅读全文
posted @ 2009-09-02 23:11 palam 阅读(758) 评论(0) 推荐(0)

摘要:本文出自:BBS水木清华站 作者:Mccartney (coolcat) (2002-01-29 20:28:07)3 使用同步对象来编程 本章定义了四种可用的同步类型,并且讨论实现同步的注意事项。 互斥锁(mutex) 条件变量(condition variable) 多读单写锁(multi-read,single-write lock) 信号量(semophore) 进程间同步(process... 阅读全文
posted @ 2009-09-02 23:11 palam 阅读(251) 评论(0) 推荐(0)

摘要:【fcntl系统调用】 功能描述:根据文件描述词来操作文件的特性。 用法: int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(int fd, int cmd, struct flock *lock); 参数: fd:文件描述词。 cmd:操作命令。 arg:供命令使用的参数。 lock:同上。... 阅读全文
posted @ 2009-09-02 23:06 palam 阅读(8211) 评论(1) 推荐(0)

摘要:const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目。 事实上这个概念谁都有只是三种声明方式非常相似很容易记混。 Bjarne在他的The C++ Programming Language里面给出过一个助记的方法: 把一个声明从右向左读。 char * const cp; ( * 读成 pointer to cp is a cons... 阅读全文
posted @ 2009-09-02 23:04 palam 阅读(476) 评论(0) 推荐(0)

摘要:va_list ap; //声明一个变量来转换参数列表 va_start(ap,fmt); //初始化变量 va_end(ap); //结束变量列表,和va_start成对使用 可以根据va_arg(ap,type)取出参数 已经经过调试成功的输出程序#include<stdio.h>#include <stdarg.h>#define bufsize 80char buf... 阅读全文
posted @ 2009-09-02 21:39 palam 阅读(801) 评论(0) 推荐(0)

摘要:e1000驱动中有个宏计算所需发送描述符的数量: #define TXD_USE_COUNT(S, X) (((S) >> (X)) + 1 )X应该是按比特计数的,可是我在调用它时,不小心把X用成了更大的值。在静态分析代码时我理所当然地认为,右移结果当然应该是0喽。但根据“凡走过必留下痕迹”的原则,我还是在这里还是加来了一个printk(),运行之后,唉,我发... 阅读全文
posted @ 2009-08-27 21:13 palam 阅读(402) 评论(0) 推荐(0)

摘要:#if 0变态的C表达式 1、局部变量i,是保存在栈上的,没有拷贝!2、不要试图编译成汇编代码分析,它们对你理解代码没有什么帮助,这招儿我试过了,后来想想也是不应该有用~3、后缀++,和前缀++的求值时间是理解以下程序的另一个关键点。4、程序中的注释,也是一些提示。嗯?你觉得它们更像谜语?猜吧。5、开动你的脑筋,只有自己想出来的答案,记忆才是最深刻的。#endif#include <stdi... 阅读全文
posted @ 2009-08-27 21:07 palam 阅读(222) 评论(0) 推荐(0)

摘要:什么是远程过程调用 RPC(Remote Procedure Call)? 你可能对这个概念有点陌生, 而你可能非常熟悉 NFS, 是的, NFS 就是基于 RPC 的. 阅读全文
posted @ 2009-08-26 23:54 palam 阅读(418) 评论(0) 推荐(0)

摘要:偶像 Steve Vinoski 在 maillist 的回帖中一不留神就泄漏了他为 ErlangeXchange 准备的 session ,我们可以先一睹为快。Steve 大拿是 CORBA 界的牛人,对 RPC 是 bad 很有发言权地。这篇文章也写得很漂亮,水分相当少,我就不干“损失味道”的事情了。 为方便阅读,将 mail 内容盗版如下: Well, if you ... 阅读全文
posted @ 2009-08-26 23:53 palam 阅读(382) 评论(0) 推荐(0)

摘要:预处理器(Preprocessor)   1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)      #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL  我在这想看到几件事情:   1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)   2)懂得预处理器将为你计算常数表达式的值,因此,... 阅读全文
posted @ 2009-08-26 21:55 palam 阅读(236) 评论(0) 推荐(0)

摘要:C++的拷贝函数和赋值函数既有联系又有区别,不细究的话很容易搞混,遂以小例示之如下,权作解惑之用 阅读全文
posted @ 2009-08-26 21:53 palam 阅读(526) 评论(0) 推荐(0)

摘要:编程设计 设计流程 C++ 的设计原则 对象关系 重用设计 设计易于使用的接口 设计通用的接口 协调一般性和通用性 代码注释 编写代码 精通类和对象 C++ 中的继承机制 覆盖方法的特殊情况 利用模板编写通用代码 C++ 中的一些疑难问题 C++ 中的 I/O 操作 C++ 中的异常 阅读全文
posted @ 2009-08-26 20:51 palam 阅读(312) 评论(0) 推荐(0)

摘要:Boost内容广泛,数值计算、泛型编程、元编程、平台API……不妨从容选择自己感兴趣的部分,细细品味。 Boost是什么?一套开放源代码、高度可移植的C++库。 谁发起的?C++标准委员会库工作组。 阅读全文
posted @ 2009-08-26 20:45 palam 阅读(371) 评论(0) 推荐(0)

摘要:一个简单的C++程序:#include <iostream>using namespace std;int main(void){ cout << "hello, world!" << endl;}布尔类型: true or false;引用类型: int m; int &n = m; n相当于m的别名, 对n的操作就是对m的操作;引用与指针的不同:1.... 阅读全文
posted @ 2009-08-25 23:42 palam 阅读(253) 评论(0) 推荐(0)

1 2 下一页