- 博客(14)
- 资源 (2)
- 收藏
- 关注
转载 一个简单的多线程 pthread_detach
nclude#include#includevoid print_message_function( void *ptr );main ( ){ pthread_t thread1; while(1) { pthread_create(&thread1,NULL,(void *)&print_m
2011-06-28 13:57:00 1293
转载 msync(void *addr,size_t len, int flags) 函数的使用问题
msync(void *addr,size_t len, int flags) 函数使用问题【注意】: 只有在调用了munmap()后或者msync()时,才把内存中的相应内容写回磁盘文件,所写内容仍然不能超过文件的大小。mmap系统调用共享内存1. 解除内存映射函数munmap功能:用来取消参数 【映射的内存地址】所指向的内存起始地址,成功返回0,失败返回-1
2011-06-28 13:48:00 8523 1
原创 《c和指针》--宏可变参数
VA_LIST 是在C语言中解决变参问题的一组宏,定义在头文件下。VA_LIST的用法: (1)首先在函数里定义一具VA_LIST型的变量,这个变量是指向参数的指针 (2)然后用VA_START宏初始化变量刚定义的VA_LIST变量,这个宏的第二个参数是第一个可变参数的前一个参数,是一个固定的参数。 (3)然后用VA_ARG返回可变的参数,VA_AR
2011-06-23 15:19:00 1787
转载 C和C++混编,c调用C++,c++调用C
这两天一直在解决这样的一个问题,项目之中有如下的需求: 嵌入式的产品,算法部分用C++实现,而控制程序和其它程序用C实现. 这就要求可以通过C来调用C++的算法程序. 同时,这个项目有一个PC的demo程序,是用VC开发的,这又要求C++能调用C的主控程序. 一直知道应该用extern,但是具体该如何使用,一直也不是很清楚. 首先给出百度来的一些相关的理论: 摘抄一: 1.引言 C++语言的创
2011-06-23 10:41:00 915
转载 int main(int argc,char* argv[])详解
argc是命令行总的参数个数 argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数命令行后面跟的用户输入的参数,比如: int main(int argc, char* argv[]) { int i; for (i = 0; i cout cin>>i;
2011-06-23 10:13:00 838
转载 iptables端口映射
本文作者:张天成 zhangtiancheng#gmail.com 转发请注明出处。 iptables是一个Linux下优秀的nat+防火墙工具,我使用该工具以较低配置的传统pc配置了一个灵活强劲的防火墙+nat系统,小有心得,看了网上也有很多这方面的文章,但是似乎要么说的比较少,要么就是比较偏,内容不全,容易误导,我研究了一段时间的iptables同时也用了很久,有点滴经验,
2011-06-22 08:11:00 1375
转载 c函数: strtok 和 strtok_r
函数名: strtok 功 能: 查找由在第二个串中指定的分界符分隔开的单词 用 法: char *strtok(char *str1, char *str2); 程序例: #include #include int main(void)
2011-06-16 10:21:00 1632
原创 GCC相关
今天编译程序是把参数L和l的作用给忘记了。。。哎,今天一定要写下来,以后再忘记时可以参考(希望不要再忘记): -llibrary 制定编译的时候使用的库 例子用法 gcc -lcurses hello.c 使用ncurses库编译程序 -Ldir 制定编译的时候,搜索库的路径。比如你自己的库,可以用它制定目录,不然 编译器将只在标准库的目录找。这个dir就是目录的名称
2011-06-07 22:04:00 553
转载 用union来判断处理器的大小端
试题1:请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1解答: int checkCPU() { { union w { int a; char b; } c; c.a = 1; return (c.b == 1); } } 剖析: 嵌入式
2011-06-07 21:44:00 668
转载 堆栈中的EIP EBP ESP
EIP,EBP,ESP都是系统的寄存器,里面存的都是些地址。 为什么要说这三个指针,是因为我们系统中栈的实现上离不开他们三个。 我们DC上讲过栈的数据结构,主要有以下特点: 后进先处。(这个强调过多)其实它还有以下两个作用: 1.栈是用来存储临时变量,函数传递的中间结果。 2.操作系统维护的,对于程序员是透明的。我们可能只强调了它的后进先出的特点,至于栈实现
2011-06-06 21:51:00 890
原创 远程 到 vmware 设置
1.网络设置:vmnet1是host-only,也就是说,选择用vmnet1的话就相当于VMware给你提供了一个虚拟交换机,仅将虚拟机和真实系统连上了,虚拟机可以与真实系统相互共享文件,但是虚拟机无法访问外部互联网,而vmnet8是NAT,就是网络地址转换,相当于给你一个虚拟交换机,将虚拟机和真实系统连上去了,同时这台虚拟交换机又和外部互联网相连,这样虚拟机和
2011-06-06 21:33:00 1355
转载 《c专家编程》笔记--linux内存对齐
在最近的项目中,我们涉及到了“内存对齐”技术。对于大部分程序员来说,“内存对齐”对他们来说都应该是“透明的”。“内存对齐”应该是编译器的 “管辖范围”。编译器为程序中的每个“数据单元”安排在适当的位置上。但是C语言的一个特点就是太灵活,太强大,它允许你干预“内存对齐”。如果你想了解 更加底层的秘密,“内存对齐”对你就不应该再透明了。一、内存对齐的原因大部分的参考资料都是如是说的:1
2011-06-06 21:26:00 3088
转载 从HTTP GET和POST的区别说起
今天看到了一些关于讨论post和get的区别,特贴出来和大家分享: post和get的区别post 地址栏不会出现一大串?bjnghfgreygt这样的东西如果是get,就会出现了1、Get 方法通过 URL 请求来传递用户的数据,将表单内各字段名称与其内容,以成对的字符串连接,置于 action 属性所指程序的 url 后,如[url]
2011-06-06 21:01:00 877
转载 Eclipse配置Tomcat5.5步骤
1. windows->prefernces->server->Runtime Environments->add在这里选择Apache Tomcat5.5,下一步,在Tomcat installation directory中选择Tomcat5.5的安装路径。点击完成->确定。 2.windows->show view->other,在弹出的对话框中选择Server->server
2011-06-06 20:41:00 1599 2
哈弗曼编码实现文件压缩
2014-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人