
c
linux内核控
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
c++的反射的demo
c++的反射的demo一个基本例子把这个改造成:调用方不改,底层so可以改的方式一个基本例子reflection.cpp// 工厂类的定义#include <map>#include <iostream>#include <string>using namespace std;typedef void* (*PTRCreateObject)(void);class ClassFactory {private: map<string, PT原创 2021-04-04 20:14:16 · 312 阅读 · 0 评论 -
unix高级编程的部分笔记
[code="java"]>gcc first.c -o first.out数open、read、write、lseek以及close提供了不用缓存的I / O./testfile.out /root/haoninggetpid();opendir(ss) 返回DIR 指针★进程:f o r k、e x e c和w a i t p i d(e x e c函数有六种变...原创 2012-10-03 11:03:28 · 160 阅读 · 0 评论 -
trie 树 的代码
想起搜狐老大的一句话看代码先看h文件,擦,当初感觉他这句话很2,现在想想,诶。代码摘自shellinabox [code="java"]// trie.h -- Basic implementation of a trie abstract data type#ifndef TRIE_H__#define TRIE_H__#include "libhtt...原创 2012-12-14 23:20:46 · 128 阅读 · 0 评论 -
指针函数与函数指针的区别
一、1、指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针类型标识符 *函数名(参数表)[code="java"] int *f(x,y);[/code] 首先它是一个函数[color=red],只不过这个函数的返回值是一个地址值[/color]。函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,...原创 2012-12-14 22:44:32 · 95 阅读 · 0 评论 -
socket unix
unix本地的socket,会产生sock文件[code="c"]root@ubuntu:~/test# cat testserver.c #include #include #include #include #include #include int main(){ int server_sockfd,client_sockfd; ...原创 2012-08-22 22:20:02 · 105 阅读 · 0 评论 -
进程间通信的例子-共享内存
消费者[code="java"]root@ubuntu:~/test/SourceCode/ch14# cat shm1.c /* Our first program is a consumer. After the headers the shared memory segment (the size of our shared memory structure) is crea...原创 2012-08-19 13:39:14 · 175 阅读 · 0 评论 -
进程间通信的例子-信号量
消息队列,信号量,共享内存vim-------------------im中翻页的命令 整页翻页 ctrl-f ctrl-b f就是forword b就是backward 翻半页 ctrl-d ctlr-u d=down u=up 滚一行 ctrl-e ctrl-y zz 让光标所杂的行居屏幕中...2012-08-17 19:19:54 · 148 阅读 · 0 评论 -
指针和数组
转载http://kan.weibo.com/con/3512394345711963[code="java"]C程序:考考你(04)一、取材于某著名公司的软件人员面试题,请问下面程序的输出结果是什么:#include int main(void) { int a[5] = {1,2,3,4,5}; int *ptr = (int *)(&a+...原创 2012-11-14 22:40:19 · 138 阅读 · 0 评论 -
用C语言,实现接收管道输出的结果,并显示
在shell里利用“|”管道干的事情就是io重定向,把“|”命令前的输出重定向到“|”后的标准输入中也就是c程序的stdin流中,所以要实现楼主所得功能程序只要跟原来的样就行了。例如[code="java"]#include int main(void){ char string[512]; fgets(string ,512,stdin);...原创 2013-04-23 21:35:51 · 821 阅读 · 0 评论 -
关于char * 与 char[]
问题引入:在实习过程中发现了一个以前一直默认的错误,同样char *c = "abc"和char c[]="abc",前者改变其内容程序是会崩溃的,而后者完全正确。程序演示:测试环境Devc++代码[code="java"]#include using namespace std;main(){ char *c1 = "abc"; char c2...原创 2013-04-22 21:56:04 · 113 阅读 · 0 评论 -
js备份
[code="java"] GPlayer (WIFI Upload) fabrices-iPhone / Up one Level Reload ...原创 2012-10-31 23:56:26 · 415 阅读 · 0 评论 -
ngx_cycle的初始化及Graphviz dot使用 生成图
nginx源码分析—全局变量ngx_cycle的初始化可以看http://www.oschina.net/question/234345_42061其中有个神器:用 Graphviz 可视化函数调用https://www.ibm.com/developerworks/cn/linux/l-graphvis/http://www.ibm.com/developerwork...原创 2012-09-03 21:45:34 · 149 阅读 · 0 评论 -
单向链表翻转
临时笔记,创建一个链表[code="java"]#include #include typedef struct node* link;struct node {int item;link next;};int main(int argc,char * argv[]){ int i,N=atoi(argv[1]); link t =malloc(size...原创 2012-12-25 23:41:08 · 96 阅读 · 0 评论 -
opengl的helloworld
1.我提供一个不需要配置环境就可运行的源码。glut.h放在项目上一层include/gl目录。glut.lib和glut32.lib放在上一层lib目录。glut.dll和glut32.dll放exe同目录。2.不需要配置环境变量。3.头文件glut.h和库文件glut.lib与glut32.lib这是include和lib[img]http://dl2.itey...原创 2014-10-22 19:41:14 · 170 阅读 · 0 评论 -
画图板用c++实现和用js实现的websocket版本
画图板opencv的c++[code="java"]#include using namespace std;#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"") const char *pstrWindowsMouseDrawTitle = "鼠标绘图(http://b...原创 2014-10-17 13:02:44 · 184 阅读 · 0 评论 -
c调用c++
参考http://www.cppblog.com/franksunny/archive/2007/11/29/37510.htmlhttp://tzc.is-programmer.com/posts/551.html前阵子被问及一个在C中如何调用C++函数的问题,当时简单回答是将函数用extern "C"声明,当被问及如何将类内成员函数声明时,一时语塞,后来网上查了下,网上有一翻译...原创 2013-10-12 15:24:48 · 78 阅读 · 0 评论 -
重定向stdout到文件
把stdout重定向到文件两种方法:第一种方法没有恢复通过freopen把stdout重新打开到文件[code="java"]#include FILE *stream;void main( void ){ stream = freopen( "freopen.out", "w", stdout ); // 重定向 if( stream ...原创 2014-03-05 18:37:21 · 1492 阅读 · 0 评论 -
通过nginx远程执行shell
saltstack远程执行shell,远程管理等返回json已经很成熟,扩展也很好用原理其实就是通过网络协议,aes加密后,用python本地执行shell等系统调用其实nginx也可以做成远程执行shell利用nginx的request的args参数可以获取url并自定义解析url的decode方法,比如%20变成空格方法如下[code="java"]void h...原创 2014-03-03 10:26:18 · 3913 阅读 · 1 评论 -
c的urldecode
[code="java"]#include #include #include void encodeurl(){ int c; char *hex = "0123456789abcdef"; while( (c = getchar()) != EOF ){ if( ('a'原创 2014-02-28 18:22:23 · 194 阅读 · 0 评论 -
pthread的pthread_mutex_lock 的使用
参考http://haoningabc.iteye.com/blog/1709157在c中多线程,打印数据互相不影响的例子关键点在pthread_mutex_lock无锁的情况testptread.c[code="java"]#include #include #include #include "pthread.h"void * process(voi...原创 2014-02-25 16:54:51 · 1061 阅读 · 0 评论 -
c语言内存
1、[b]C中内存分为五个区[/b][b]栈[/b]:用来存放函数的形参和函数内的局部变量。由编译器分配空间,在函数执行完后由编译器自动释放。 [b]堆[/b]:用来存放由动态分配函数(如malloc)分配的空间。是由程序员自己手动分配的,并且必须由程序员使用free释放。如果忘记用free释放,会导致所分配的空间一直占着不放,导致内存泄露。 [b]全局局[/b]:用来存放全局变量和静...原创 2014-07-02 10:26:29 · 128 阅读 · 0 评论 -
c调用mysql
[code="java"]root@ubuntu:/usr/local/app/taf/app_log/KMusic/MobileKMusicListServer# cat mysql_select.c #if defined(_WIN32) || defined(_WIN64) //为了支持windows平台上的编译#include #endif#include #...原创 2012-10-10 16:23:47 · 153 阅读 · 0 评论 -
线程的helloworld
[code="java"]#include#include#includepthread_t appId,bnaId,cryId;int ret;int status=1; void apple(){ while (1){ if (status==1){ status=2; printf("apple\n"); } pthread_y...原创 2012-10-30 21:51:53 · 178 阅读 · 0 评论 -
c的书籍
http://www.acm.uiuc.edu/webmonkeys/book/c_guide/http://man.lupaworld.com/content/develop/joyfire/system/8.html转自一个朋友的空间收藏的[code="java"]C/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c/c++源代码。这份清...原创 2012-10-30 10:56:33 · 130 阅读 · 0 评论 -
转io的同步
转http://blogread.cn/it/article.php?id=4108&f=sinat阻塞型 IO(blocking I/O)非阻塞性IO(nonblocking I/O)IO多路复用(I/O multiplexing)信号驱动IO(signal driven I/O)异步IO(asynchronous I/O)...原创 2011-08-09 22:56:01 · 79 阅读 · 0 评论 -
axis2c_helloworld
java的版本请看我的http://haoningabc.iteye.com/blog/975976参考http://axis.apache.org/axis2/c/core/docs/axis2c_manual.html#quick_start1.下载axis2c-src-1.6.0.tar.gz2.添加.bashrcmkdir /root/Desktop/axis...原创 2011-03-29 00:27:19 · 212 阅读 · 0 评论 -
read apue
准备所有的类都去掉apue.h就niuB了,fig1.4开始ok用vim解决,ctags -R -f systag /usr/include/ /mydir把systag加入~/.vimrcvim编辑的时候control+]跳到找不到了定义就行了在P O S I X . 1应用程序中,幻数0、1、2应被代换成符号常数S T D I N F I L E N O、S T D O...原创 2011-10-24 11:34:53 · 143 阅读 · 0 评论 -
c错误列表
1.fig1.4: file not recognized: File format not recognized.gcc fig1.4mv fig1.4 fig1_4.cgcc fig1_4.c2.错误:‘STDIN_FILENO’ 未声明 (在此函数内第一次使用)头文件找不到就用绝对路径#include "/root/mytest/c/apue.2e/include...原创 2011-10-21 17:20:15 · 144 阅读 · 0 评论 -
The C Programming Language习题
收藏一下慢慢看吧http://users.powernet.co.uk/eton/kandr2/另附http://coolshell.cn/articles/1837.htmlvim与eclipse结合,vim疯了吧http://coolshell.cn/articles/5426.htmlvim练级攻略卧槽,6个变态的helloword--经典啊http:...原创 2011-10-19 23:23:17 · 187 阅读 · 0 评论 -
cpp的宝贝网站
http://www.cplusplus.com/user/原创 2011-10-19 16:59:47 · 115 阅读 · 0 评论 -
c++的类系芥么顶一地,卧槽
摘自c++primer[code="c++"]#ifndef SALESITEM_H#define SALESITEM_H// Definition of Sales_item class and related functions goes here#include #include class Sales_item {friend bool ...原创 2011-10-18 23:15:19 · 104 阅读 · 0 评论 -
c++primer源码
附件中的zip包为源码原创 2011-10-17 21:44:26 · 331 阅读 · 0 评论 -
(转)从C源程序到Linux可执行程序之旅的四个阶段
转载http://article.yeeyan.org/view/20180/222590[code="java"] 编写一个C程序,使用gcc进行编译,然后得到一个可执行程序。相当简单,对吗?你有没有问过自己,编译处理期间到底发生了什么事情,还有C程序如何转换成可执行程序呢?为了最后变成可执行程序,源代码要经过的行程主要有四个阶段。C源程序变成可执行程序的四个阶段如下...原创 2011-10-10 09:44:17 · 164 阅读 · 0 评论 -
malloc和calloc,balloc区别
balloc是新东西吗?apue上没有[code="java"]三个函数的声明分别是: void* realloc(void* ptr, unsigned newsize); void* malloc(unsigned size); void* calloc(size_t nelem, size_t elsize); 都在stdlib.h函数库内 它们的返回值都是请求系统分配的地址,如果...原创 2011-12-21 00:30:29 · 746 阅读 · 0 评论 -
二叉树
转http://www.cnblogs.com/fornever/archive/2011/11/15/2249492.html一句话,出来混,早晚是要还的,天天弄java,mlgbd基础全忘光了[code="c"]#include #include #include typedef int Elemtype;typedef struct Balanced_Bina...原创 2011-12-27 18:30:27 · 98 阅读 · 0 评论 -
经典2fork解决僵死进程
目的是父进程异步等待,子进程不变僵尸进程,(让子进程属于init)。如果一个进程要f o r k一个子进程,但不要求它等待子进程终止,也不希望子进程处于僵死状态直到父进程终止,实现这一要求的诀窍是调用fork两次。在第二个子进程中调用s l e e p以保证在打印父进程I D时第一个子进程已终止。在f o r k之后,父、子进程都可继续执行——我们无法预知哪一个会先执行。如...原创 2011-11-18 10:29:20 · 116 阅读 · 0 评论 -
c++内存泄露
转http://www.codeproject.com/Articles/393957/Cplusplus-Memory-Leak-Finder[code="java"]Introduction In this article I will discuss a way to build a memory leak detection program for C and...原创 2012-06-26 23:42:32 · 1914 阅读 · 0 评论 -
gcc基础★
http://wenku.baidu.com/view/c77d0ad5b9f3f90f76c61b78.html这篇文章跟我写 无关读《linux高级程序设计》[code="java"][root@localhost ctest]# cat message.c #include void goodbye_world(void){ printf("...原创 2012-06-25 22:51:53 · 108 阅读 · 0 评论 -
深入理解计算机系统第三章笔记 gcc
随便写个最简单程序然后gcc -S看汇编在gcc -C 变成.o文件使用objdump -d 反汇编[code="java"] 2010 vim code.c 2011 ls 2012 gcc -O1 -S code.c 2013 ls 2014 cat code.s 2015 gcc -S code.c 2016 ...原创 2012-10-24 12:11:16 · 146 阅读 · 0 评论 -
c的类型转换
转百度文库http://wenku.baidu.com/view/ddbeba0fba1aa8114431d96a.html[code="java"]C类型转换 atof(将字符串转换成浮点型数) 相关函数 atoi,atol,strtod,strtol,strtoul 表头文件 ...原创 2011-12-09 01:24:50 · 124 阅读 · 0 评论