小小鸟的林子

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

2011年12月1日

摘要: 转自:http://blog.csdn.net/andyxie407/article/details/1672325有这样一个C/S程序,server提供一个叫做ruptime的服务,功能是当有客户端连接时调用uptime程序,并将结果发送到client。可是现在的问题是,这个服务系统本来是没有的,所以调用getaddrinfo的时候会返回如下错误:Servname not supported for ai_socktype我觉得可能是需要编辑/etc/service文件把自己这个服务加进去,可是我加了之后没管用(设的端口是4000),开机的时候提示启动服务失败,所以我的问题就是如何开启我这个 阅读全文
posted @ 2011-12-01 22:47 林中鸟 阅读(585) 评论(1) 推荐(0) 编辑

摘要: warning: suggest parentheses around assignment used as truth value转自:http://www.cppblog.com/mymsdn/archive/2008/08/25/warning-suggest-parentheses-around-assignment-used-as-truth-value.htmlwhile(*s++ = *t++) ;这句是非常经典、简洁的指针操作语句,但是它在gcc编译器下居然会出现警告。warning: suggest parentheses around assignment used as 阅读全文
posted @ 2011-12-01 21:58 林中鸟 阅读(854) 评论(0) 推荐(0) 编辑

2011年11月29日

摘要: 参考文章:http://blog.csdn.net/baobaoyeye/article/details/6175456看APUE中的网络IPC这章,其中讲到地址格式通用的地址结构sockaddrstruct sockaddr{ sa_family_t sa_familiy; /* address family */ char sa_data[]; /* variable-length address */ ... ...};实现可以自由地添加额外的成员并且定义sa_data成员的大小。在IPV... 阅读全文
posted @ 2011-11-29 21:55 林中鸟 阅读(1839) 评论(0) 推荐(0) 编辑

2011年11月13日

摘要: 转自:http://bbs.chinaunix.net/viewthread.php?tid=2296527严格来说gtk并不是线程安全的(好像也没听说过哪个GUI是线程安全的,WinGDI 不是,Android的UI亦不是),不过gtk是thread aware的。这和其他GUI又有啥不同呢?我们可以在两个不同的线程中使用gtk,不像其他GUI库只限制在UI线程中使用。其实也很少在多个线程中使用gtk,通常的做法是把对gtk的操作同步到UI线程中,习惯上称调用gtk_main的线程为UI线程,一般就是主线程。 单线程中使用gtk就是通常的情况,多线程环境中有2中方式,下面一个一个说。1. . 阅读全文
posted @ 2011-11-13 11:10 林中鸟 阅读(1723) 评论(1) 推荐(0) 编辑

2011年11月11日

摘要: 1.创建源代码[zechen11@Arch ~]$ mkdir hello[zechen11@Arch ~]$ cd hello[zechen11@Arch hello]$ gvim helloGTK.c源码如下:#include <gtk/gtk.h>/* 这是一个回调函数。data 参数在本例中被忽略 * 后面有更多的回调函数示例。 */void hello( GtkWidget *widget, gpointer data ){ g_print("Hello GTK!\n");}gint delete_event( GtkWidget *widget, G 阅读全文
posted @ 2011-11-11 14:53 林中鸟 阅读(1495) 评论(0) 推荐(1) 编辑

2011年11月9日

摘要: 转自:http://www.groad.net/bbs/read.php?tid-906.html开发多语言软件是一件非常困难的事,各个国家的字符集的编码方式、货币符号、日期格式、数字格式、文字表现都各不相同,glibc提供了大量的函数处理这些事情,不再聱述了。这里要做的是,用一个简单的实例说明一下GetText 的用法,GetText是一系列的工具和库函数,帮助程序员和翻译人员开发多语言软件的。GetText 并不是一个神秘的东西,若非要在Win32下找一个东东与之对应的话,我想应该是资源文件(.res),它替你把字符串管理起来,在运行时可以根据当前的语言,自动加载对应语言的字符串。这里假设 阅读全文
posted @ 2011-11-09 21:25 林中鸟 阅读(708) 评论(0) 推荐(0) 编辑

摘要: 转载自:http://www.groad.net/bbs/read.php?tid-4077.htmlbindtextdomain() 和 textdomain() 函数声明如下:#include <libintl.h>char * bindtextdomain (const char * domainname, const char * dirname);char * textdomain (const char * domainname);bindtextdomain() 用来设置文本域目录。所谓的文本域文件就是 mo 文件,mo 文件在开发多语言软件中会用到,比如正常打印 & 阅读全文
posted @ 2011-11-09 17:34 林中鸟 阅读(3436) 评论(0) 推荐(0) 编辑

2011年9月27日

摘要: #include <stdlib.h>#include <stdio.h>typedef int ElementType;void swap( int *a, int *b ){ int temp; temp = *a; *a = *b; *b = temp;}ElementType middian( ElementType a[], int start, int end ){ int center = ( start + end ) / 2; if( a[start] > a[center] ) swap( &a[start], &a[cen.. 阅读全文
posted @ 2011-09-27 10:44 林中鸟 阅读(204) 评论(0) 推荐(0) 编辑

2011年9月26日

摘要: #include <stdio.h>#include <stdlib.h>/*数组需预先排序*//*递归实现*/int find1( float a[], int start, int end, float tofind){ int center = (start + end)/2; if( start > end ) return -1; if ( a[center] == tofind ) return center; else if( a[center] > tofind ) find1( a, start, center-1, tofind); el 阅读全文
posted @ 2011-09-26 10:13 林中鸟 阅读(206) 评论(0) 推荐(0) 编辑

2011年9月18日

摘要: 题目:有一个数组a[N]如a[10]={0,1,2,3,4,5,6,7,8,9}每隔两个数删除一个数,如0,1,2(删除),3,4,5(删除),6,7,8(删除),9,到数组尾部回到数组头部继续删除,要求编写一个函数实现实现上述操作,返回最后一个数的数组下标。函数接口:int getLast(int iLen)参数:数组初始元素个数iLen#include <stdio.h>#include <stdlib.h>typedef struct node *List;typedef struct node *PNode;typedef struct node{ int da 阅读全文
posted @ 2011-09-18 21:50 林中鸟 阅读(817) 评论(2) 推荐(0) 编辑