2017年8月28日

tinyhttpd的使用与源码分析

摘要: 本着学习的目的下载到了tinnyhttpd的源码,首先阅读了一下readme文档,以下是tinnyhttpd的readme的大概意思: 这个软件是 J. David Blackstone在1999年写的,根据从http://www.gnu.org/获得的GNU通用公共许可证被允许修改和分发。 如果你使用这个软件或者测试这个代码,我将会非常感激,并想知道关于这件事情,可以联系我jdavi... 阅读全文

posted @ 2017-08-28 11:31 cfzhang 阅读(707) 评论(0) 推荐(0) 编辑

webbench工具使用和源码分析

摘要: Webbench是有名的网站压力测试工具,它是由Lionbridge公司(http://www.lionbridge.com)开发.它的帮助文件和文档请到:www.webbench.com上查看.Webbech能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况.webBech的标准测试可以向我们展示服务器的两项 内容:每秒钟相应请求数和每秒钟传输数据量.webbench不但能具... 阅读全文

posted @ 2017-08-28 11:30 cfzhang 阅读(309) 评论(0) 推荐(0) 编辑

一个简单的栈操作

摘要: 一个简单的栈操作,对于什么是栈就不在描述了,具体代码如下:不考虑多线程任务同步情况:#ifndef _STACK_H_#define _STACK_H_#define STACK_INIT(type,size,name) \ type stack_##name[size];\ static int top_##name = 0#define POP(name) \ (top_##name > ... 阅读全文

posted @ 2017-08-28 11:29 cfzhang 阅读(253) 评论(0) 推荐(0) 编辑

C调用C++的函数

摘要: C调用C++链接库C调用C++链接库: 1.编写C++代码,编写函数的时候,需要加入对C的接口,也就是extern “c" 2.由于C不能直接用"class.function”的形式调用函数,所以C++中需要为C写一个接口函数。例如本来要调用student类的talk函数,就另外写一个cfun(),专门建一个student类,并调用talk函数。而cfun()要有extern声明 3.我在练... 阅读全文

posted @ 2017-08-28 11:28 cfzhang 阅读(6681) 评论(0) 推荐(0) 编辑

C关于字符串赋值的一些方法比较

摘要: #include#include int main(){ char fmt[16]; strncpy(fmt, "aaaabbbbccccddddeeee", sizeof(fmt)); printf("strncpy: %s\n",fmt); strcpy(fmt, "aaaabbbbccccddddeeee"); printf("strcpy: %s\n",fmt); sprintf(fmt... 阅读全文

posted @ 2017-08-28 11:27 cfzhang 阅读(477) 评论(0) 推荐(0) 编辑

线程私有关键字配合static使用

摘要: #include#includevoid* test(void *arg){ int n = 10; static __thread int a = 0; printf("running in thread :%d, a= %d\n",pthread_self(),a++); usleep(200); }void* test1(void *arg){ int n = 10; while(n--) ... 阅读全文

posted @ 2017-08-28 11:26 cfzhang 阅读(173) 评论(0) 推荐(0) 编辑

获取文件的md5值

摘要: #include#include#includeint main( int argc, char **argv ){ unsigned char *data = "123"; unsigned char md[16]; int i; char tmp[3]={'\0'},buf[33]={'\0'}; MD5(data,strlen(data),md); for (i = 0; i < 16; i... 阅读全文

posted @ 2017-08-28 11:25 cfzhang 阅读(224) 评论(0) 推荐(0) 编辑

对定义局部变量位置的思考

摘要: C89规定,在任何执行语句之前,在块的开头声明所有局部变量。在C99以及C++中则没有这个限制,即在首次使用之前,可在块的任何位置都可以声明变量。另一方面,编译器不同也不同,gcc编译器有很多扩展的功能,可完美支持C99标准。 所以在gcc编译下局部变量并不是一定要定义在代码块的开始位置,可以如下进行定义。#include void test(void *arg){ printf("... 阅读全文

posted @ 2017-08-28 11:25 cfzhang 阅读(663) 评论(0) 推荐(0) 编辑

JNI接口的整理

摘要: 一.JDK环境的安装(1)、jdk安装 JDK作为JAVA开发的环境,不管是做JAVA开发的学生,还是做安卓开发的同学,都必须在电脑上安装JDK。下面就教大家如何安装JDK。 首先上甲骨文公司的官方网站下载JDK的安装包,根据自己电脑的操作系统选择正确的版本下载。不知道下载地址的同学可以百度一下很快就能搜到。附件里面有一份安装包用鼠标左键双击JDK安装包,会出现下图所示的安装界面。其实... 阅读全文

posted @ 2017-08-28 11:23 cfzhang 阅读(413) 评论(0) 推荐(0) 编辑

数兔子问题

摘要: 编程实现:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第3个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?C代码 long int get_rabbits_cnt(long int month){ long int cnt = 1; long int cnt_pre = 0; long int cnt_prepre = 0; long int i; fo... 阅读全文

posted @ 2017-08-28 11:20 cfzhang 阅读(180) 评论(0) 推荐(0) 编辑

导航