C
juneman
爱技术
展开
-
一道很有基本功的指针题
struct S { int i; int *p; }; main() { S s; int *p=&s.i; p[0]=4; p[1]=3; s.p=p; s.p[1]=1; s.p[0]=2; } 程序执行到哪一句会崩溃?为什么?转载 2009-04-30 23:42:00 · 514 阅读 · 0 评论 -
编译第一个LINUX下 OPENCV 程序
程序如下:test1.c 1 #include 2 #include 3 4 int main(int argc, char **argv) 5 { 6 cvNamedWindow("Test1", CV_WINDOW_AUTOSIZE); 7 CvCapture * capture = cvCreateFileCapture(argv[1]);原创 2012-05-30 22:23:25 · 785 阅读 · 0 评论 -
get whitspace
#includeint main(){ int depth = 4; char *s = "Hello"; printf("---%4s%s---/n","",s); printf("---/t%s---/n",s)原创 2011-02-18 22:42:00 · 411 阅读 · 0 评论 -
//返回不比d小的最小的a的倍数,a是2的x次方
#define align(d,a) (((d)+(a-1))&~(a-1))转载 2012-12-13 16:32:08 · 490 阅读 · 0 评论 -
防止LINUX上错误使用RM
mkdir -p ~/.trashalias rm=trashalias r=trashalias rl='ls ~/.trash'alias ur=undelfile undelfile() { mv -i ~/.trash/$@ ./ } trash(){ mv $@ ~/.trash/ }转载 2013-07-30 10:59:40 · 1186 阅读 · 0 评论 -
C技巧:结构体参数转成不定参数
http://coolshell.cn/articles/2801.html#include #define func(...) myfunc((struct mystru){__VA_ARGS__}) structmystru { constchar *name; intnumber; };转载 2013-10-24 10:44:43 · 1081 阅读 · 0 评论 -
一个简单的游戏服务器框架
http://software.intel.com/zh-cn/blogs/2012/03/22/400010056/?cid=sw:prccsdn2203转载 2012-04-21 14:15:52 · 611 阅读 · 0 评论 -
shell下时间处理data命令详解
http://hi.baidu.com/linuxpf/item/13c7edfbee98845cc9f337e9date -d now +%s #时间转成时间戳date -d '1970-01-01 1251734400 sec utc' +%Y/%m/%d/\ %T #时间戳转成时间date -d "1970-01-01 UTC $tim seconds转载 2013-11-05 13:55:35 · 2360 阅读 · 0 评论 -
关于内核转储的设置方法(coredump)
http://blog.csdn.net/wj_j2ee/article/details/71615861. 内核转储作用 (1) 内核转储的最大好处是能够保存问题发生时的状态。(2) 只要有可执行文件和内核转储,就可以知道进程当时的状态。(3) 只要获取内核转储,那么即使没有复现环境,也能调试。 2. 启用内核转储1.1转载 2013-12-11 09:52:48 · 2479 阅读 · 0 评论 -
【最终版 & 总结】自实现自旋锁 与 mutex,spinlock比较(结果令人吃惊)
【最终版 & 总结】自实现自旋锁 与 mutex,spinlock比较(结果令人吃惊)http://www.9php.com/FAQ/cxsjl/c/2011/08/9244324162620.html总结一下:最后修改了一下测试代码,比较方便的设置线程数,选择测试对象,设置delay的参数。经过测试发现我的实现测试的结果时间非常稳定,2个,10个,20转载 2013-12-23 11:55:19 · 901 阅读 · 0 评论 -
TEst
// slaver#pragma comment (lib,"ws2_32.lib") #include #include static int base_port = 60123;void main() { //版本协商 WORD wVersionRequested; WSADATA wsaData转载 2011-12-15 08:13:11 · 483 阅读 · 0 评论 -
win32 udp
UDP Socket编程 C/C++实现 (Windows Platform SDK) Server: ------------------------------------------------------- #pragma comment (lib,"ws2_32.lib") #include #include void main() {转载 2011-12-15 07:51:07 · 1235 阅读 · 0 评论 -
并发控制的字符设备驱动程序
<br />http://blog.chinaunix.net/space.php?uid=24219701&do=blog&id=91468转载 2011-01-18 19:01:00 · 596 阅读 · 0 评论 -
Linux C 线程同步实例
http://apps.hi.baidu.com/share/detail/6351749#include #include #define BUFFER_SIZE 16 // 缓冲区数量struct prodcons{// 缓冲区相关数据结构int buffer[BUFFER_SIZE]; /* 实际数据存放的数组*/pthread_mutex_t lock; /* 互斥体lock 用于对缓冲区的互斥操作 */int readpos, writepos; /* 读写指针*/转载 2011-01-17 22:12:00 · 1368 阅读 · 0 评论 -
C打印自己
#include ;int main(){ FILE *f; char c; if ( ( f = fopen( __FILE__, "r" ) ) != NULL ) { while ( fread( &c, 1, 1, f ) == 1 ) frwite( &c, 1, 1, stdout ); fclose( f ); } return 0;}转载 2011-03-10 20:44:00 · 808 阅读 · 0 评论 -
[转]Linux下NET-SNMP安装配置记录
<br /><br />第一章 安装<br />1. 系统准备工作: <br />·本系统需要的安装包:<br />beecrypt-4.1.2.tar.gz (Net-SNMP依赖文件)<br />net-snmp-5.4.2.1.tar.gz (Net-SNMP安装包)<br />解压各压缩包,使用 “tar -vzxf … ”指令解压。<br /><br />2. 安装beecrypt <br />·net-snmp安装时需要用到beecrypt,所以需要先安装。进入beecrypt解压目录执行以下指转载 2011-05-19 21:19:00 · 4599 阅读 · 0 评论 -
net-snmp软件包搭建SNMP环境
<br /><br />搭建一个SNMP环境可以方便学习,也可直观的了解SNMP中各种实体及其行为,更加有效的学习。此处用net-snmp软件包搭建SNMP环境。<br />1 net-snmp简介<br />net-snmp是个开源的SNMP实现项目。支持SNMPv1、SNMPv2、SNMPv3,支持基于IPv4和IPv6的SNMP应用程序开发。<br />net-snmp包括以下内容:<br />l 完整的API用于SNMP应用程序开发(包括c和perl的API);<br />l 一个可扩展的SNM转载 2011-05-19 21:58:00 · 1719 阅读 · 0 评论 -
MACRO of a method of loop list for visit elements
<br /> <br />#define _____________________________(pnode ,head, entry, n, type, member) /for(entry=list_entry((pnode)->next, type, member),/ n = list_entry(entry->member.next, type, member) ;/ n==NULL?0:/ (&entry->member == (head)?(原创 2011-05-21 19:18:00 · 575 阅读 · 0 评论 -
PLC 在Linux 上的仿真方案
PLC 在Linux 上的仿真方案1、实现功能a. 实现业务基本通路仿真b. 实现加入/离开网络仿真c. 实现中继转发仿真2、对仿真平台技术要求及解决方案a. 技术要求① 要能模拟信号衰减② 要能模拟PHY收发数据③ 要能模拟总线链路④ 要能模拟总线冲突检测b. 解决方案① 要能模拟信号衰减 可以给每个站点设置一个位置属性L, 表示到CCO之间的距离, CCO为0。 然后,设置一个信号衰减距离为P。 每个仿真站点在 发送数据时,将自己站点的位置属性写入数据包中,每个站点收到 后, 用自原创 2011-04-07 21:33:00 · 1269 阅读 · 0 评论 -
IEEE802.11 MAC层协议栈的均衡多线程实现方法
<br /> <br />摘要:IEEE802.11标准中的媒体接入控制层(MAC)协议栈由包含22个子模块的有限状态机组成。在嵌入式系统的基础上实现802.11MAC层协议栈时,可以有多线程和单线程的设计方法,但它们都难以达到效率均衡的效果。这里提出的均衡多线程的设计方法,兼顾了系统效率和可实现性的要求,获得了良好的效果。仿真实验结果验证了此方法的高效性。<br />关键词:无线局域网;MAC协议栈;均衡多线程;嵌入式Linux<br />在无线局域网(WLAN)系统中,IEEE802.11标准仍然有许多原创 2011-04-07 22:14:00 · 1714 阅读 · 0 评论 -
linux timer
<br /><br /> #include <sys/timerfd.h> int timerfd_create(int clockid, int flags); int timerfd_settime(int fd, int flags, const struct itimerspec *new_value, struct itimerspec *old_value); int timerfd_gettime(int fd, struct itime转载 2011-04-21 01:18:00 · 4948 阅读 · 0 评论 -
发现一个很牛的开方算法
static int SQRT (int nRoot) { int nSqrt = 0; for(int i = 0x10000000; i != 0; i >>= 2) { int nTemp = nSqrt + i; nSqrt >>= 1; if(nTemp <= nRoot) {原创 2013-12-13 15:56:22 · 1466 阅读 · 0 评论