- 博客(35)
- 资源 (1)
- 收藏
- 关注
原创 GTK+ 多道批处理模拟程序代码
google_ad_client="pub-6065469188450680";google_ad_width=728;google_ad_height=90;google_ad_format="728x90_as";google_ad_type="text_image";google_ad_channel="6872543818";刚才在线填写申请单,最后的联系人
2008-04-12 18:13:00 1058
原创 标准c下生成一个字符串心得
我的图形化操作系统算法演示程序即将诞生我正在埋头苦干中今天的收获也挺多最近越来越感到c语言在处理字符串上不同于c++ java的地方c语言的字符串要么用数组(栈) 要么用指针(堆)而java和MFC有封装好的类 真是方便不过我坚信c是最牛x的在int转字符串上卡了一会itoa是MFC下的东西 害我找不到 不用spritf()就跟printf一样好使例如int process_no_count
2008-04-09 22:32:00 793
原创 GTK+ 响应下拉列表框的changed信号
自学真是太痛苦了Linux编程技术详解 是个半吊子关键的地方就没了害我自己找半天 没有网络真不行阿g_signal_connect(GTK_COMBO(combol)->entry,"changed",GTK_SIGNAL_FUNC(combo_changed),(gpointer)combol);还有我想解决回调函数只能传一个参数的问题 我用了结构体来装多个参数 总是出错 打击只好使用全局变
2008-04-08 22:13:00 1851
原创 GTK+改变按钮构件的文本 gtk_button_set_label()
我真是天才 居然自己就找到这个函数了gtk_button_set_text居然是没有定义的 是骗人的害我心情又不爽了一会调程序真是不爽啊gtk_button_set_label()才是正确的我居然自己猜到这个函数 哈哈/*************************************************************************** * Copyright
2008-04-07 17:45:00 3138
原创 GTK+ 简单控制构件大小及布局
初学GTK+感觉GTK+布局太难了好像写HTML界面又好像java编可视化界面 不但不好定位 而且构件的大小还不好控制 弄得不好一个巨大的button就出现了想想MFC时的简单 我想到一个无赖的办法 使用固定的位置呈现指定大小的构件只要不让用户更改窗口大小 显示就不会错位这样做最简单gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, T
2008-04-06 21:27:00 3039 1
原创 原来我们正在竞争
这些东西是不敢让熟人看到的所以就不在校内上写了昨天跑到509去呆了一会感觉很震撼那个宿舍的都是学习超牛x的本来上了大学我认为可以不再追究成绩突然发现我错了听着他们一个个牛气哄哄地考中科院研究生的计划我突然有了想法大学绝对不是一个平静的地方暗潮涌动试想10年以后同一个班的大学同学再见面各自的境遇肯定是天和地的差距我绝对不接受成为失败者的现实我这辈子最怕的就是平庸我是不打算考研了上学上烦了也不想让父母
2008-04-06 20:08:00 682 3
原创 IOCCC--国际混乱C代码大赛
真是太牛x了 看得人头晕 一头雾水这些人是c语言的高手还是捣乱分子啊能看懂的人c造诣颇深沾一个04年的//gavare.cX=1024; Y=768; A=3;J=0;K=-10;L=-7;M=1296;N=36;O=255;P=9;_=1"FHHMMOO55557799@@>>>BBBGGIIKK"[b]-64;C="C@=::C@@==@=:C@=:C@=:C5""31/513/5131/""
2008-04-06 15:25:00 1409
转载 glib库简介
glib库是Linux平台下最常用的C语言函数库,它具有很好的可移植性和实用性。glib是Gtk+库和Gnome的基础。glib可以在多个平台下使用,比如Linux、Unix、Windows等。glib为许多标准的、常用的C语言结构提供了相应的替代物。如果有什么东西本书没有介绍到,请参考glib的头文件:glib.h。glib.h中的头文件很容易理解,很多函数从字面上都能猜出它的用处和用法。如果有
2008-04-05 11:18:00 2793
原创 用kdevelop搭建GTK+开发平台
昨天实现了命令行下编译GTK+文件今天琢磨了一下 想利用Kdevelop的强代的编辑功能遂有此文我真是好傻 其实在fedora 7 和fedora 8下默认已经安装了GTK+所需的几个库可以直接编译的只要你在装系统定制软件安装包时把开发里面的勾多打几个就行了没有安装的网上的资料很多也很容易安装本文的前提已经能在shell下编译通过如果有问题参见我的上一篇日志现在我想在kdevelop上直接编译连接
2008-04-04 20:37:00 1057 1
原创 第一个GTK+程序编译失败解密!
他妈的 这个问题困扰我好久了一直想在Linux下开发图形界面不想学Qt 因为被Nokia买走了微软我都敢甩 何况Nokia 结果我的第一个GTK+程序总编译不通过 带给我巨大的挫败感我要死了 终于找到解决办法了还是Linux的教材太少了 以至旧教材还在误导初学者以下是最常见的helloworld---------------------------#include int main( int
2008-04-03 22:15:00 1571
原创 VC判断windows操作系统语言
虽然不喜欢windows 可我喜欢黑客技术 要编写病毒木马或者黑客工具不得不使用VC说真的 要不是微软为了.net封杀MFC也许我就不会跳到Linux平台上来了简单的代码 判断操作系统类型听说去年有个病毒专格日本、印尼的磁盘对中国的windows秋毫不犯 #include #include int main(int argc, char* argv[]){ LC
2008-04-03 17:30:00 1847
转载 c99关键字restrict
今天猛地看到 restrict这个关键字功能是将其修饰的变量不与其他变量关联 这样可以提高编译效率关键字restrict的使用可以通过下面两个程序来说明 。如下程序:两个均完成2个16位短型数据数组的矢量和程序1:void vecsum( short *sum, short *in1, short *in2, unsigned int N){ int i;
2008-04-02 22:36:00 806
原创 Linux下c实现 IP转为域名
都是入门级的例子练手而已/*************************************************************************** * Copyright (C) 2008 by root *Linux下c实现 IP转为域名 **********************************************************
2008-04-02 17:08:00 1584 2
原创 Linux下C实现通过域名得到IP
一直想学Linux网络编程 并且固执的要用c来写 认为这样才是最纯正牛x的结果c写网络太难了.....我想实现一个http的简单的get操作居然没有找到一个例子气死我了Linux下的学习资料太少 那 我就来补充吧gethostbyname()真是相当简单 我终于可以自己写一个网络程序了/******************************************************
2008-04-01 22:45:00 4070 1
原创 c语言实现计算器
昨天的是用顺序栈实现的今天的这个是链栈实现的并且计算的算法也改了不再先转换为后缀表达式再求值一步搞定结果导致cal()超级复杂让我debug了半天虽说不符合模块化设计要求不过我对自己可以解决那么多重嵌套还是很开心的/*************************************************************************** * Copyright (C
2008-04-01 15:58:00 2257
原创 顺序栈实现表达式求值
大一的时候老师叫用c写计算器能处理多个括号嵌套的我33行搞定其实是不会写 只好偷偷写个vbs脚本由vbs把值算出来再写入文件再读取现在我会用栈了补上这迟来的作业应龙哥怕是看不到了奶奶的 那个xx的计算器程序还是我替他写的应龙哥 你怎么可以让他的vc成绩比我还高呢从此培养了我的厌分习惯 我好恨/***************************************************
2008-03-31 22:54:00 1706 2
原创 与realloc(): invalid next size:斗争了一天 总结
数据结构实验 要用顺序表实现栈 我想实现Push时栈空间不足就再申请 所以使用了realloc函数 以下代码编译通过 (gcc) 可是当我把栈元素类型换为double时 就出错了 郁闷 debug发现在第二次 realloc时出错 #include #include #include #define LI
2008-03-29 16:53:00 8159 1
转载 c语言字符串 数字转换函数大全
最近学数据结构老是做实验常用到字符串和数字的转换想找却发现网上的资料太散所以搜集整理一下 方便以后再用atof(将字符串转换成浮点型数)atoi(将字符串转换成整型数)atol(将字符串转换成长整型数)strtod(将字符串转换成浮点数)strtol(将字符串转换成长整型数)strtoul(将字符串转换成无符号长整型数)toascii(将整型数转换成合法的ASCII 码字符)toupper(将小写
2008-03-28 18:29:00 31236 8
原创 硬盘安装fedora8
今天给一同学装fedora core 8结果他的光驱转到一半就停了 死掉了该死的奸商 学生买本容易吗只好给他硬盘安装本来没把握的 居然成功了把安装过程记录下来1 首先得有fedora 8 的ISO文件 大约3.2G将其拷到一个格式为FAT32的盘的根目录 一定要FAT32格式我是拷到D盘按照一般的典型配置 D盘就是sda5 c盘是sda1 再从ISO中用虚拟光驱或RAR取出“isolin
2008-03-27 17:43:00 881
转载 C/C++ 常见误区
1. C++虽然主要是以C的基础发展起来的一门新语言,但她不是C的替代品,不是C的升级,C++和C是兄弟关系。没有谁比谁先进的说法,更重要 的一点是C和C++各自的标准委员会是独立的,最新的C++标准是C++98,最新的C标准是C99。因此也没有先学C再说C++的说法,也不再(注意这 个"不再")有C++语法是C语法的超集的说法。2. C++/CLI 和 C# 是微软的,它们与C和C++没有任
2008-03-26 22:43:00 500
原创 我见过的最短最强大的程序
#includemain(){ char *a="#include%cmain()%c{%c%cchar *a=%c%s%c;%c%cprintf(a,10,10,10,9,34,a,34,10,9,10,10,10);%c%cgetch();%c}"; printf(a,10,10,10,9,34,a
2008-03-25 18:46:00 803
原创 c语言关于for()的疑惑
今天才知道for的标准变化奶奶的 换了一个平台才能发现这些问题啊在kdevelop下写for(int i=0;i{}居然会报错 error: for loop initial declaration used outside C99 mode原来c99标准里才支持在for的初始化部分定义一个或多个变量,这些变量的作用域仅于本for语句所控制的循环体内。http://hi.baidu.com/
2008-03-24 16:59:00 697
转载 今天知道位域了 长见识了
今天看《是非人生》那几个菜程序员的水平让我感到欣慰原来我还没那么..........不过提到了一个 位域我倒真是没见过 立马百度http://baike.baidu.com/view/1256879.htm有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数
2008-03-23 22:18:00 474
原创 c语言简单判断cpu类型
虽然几乎没有悬念的 绝大多数的pc的cpu是little-endian不过这个程序的思路还是让我感到佩服当然 也是我太菜方法1定义联合结构体union endian_un { short var; char bits[sizeof ( short ) ]; };short 在32位下占2个字节 int 占4个字节然后var=0x0102这样字符数组也存上了这个数看看bits[0]里
2008-03-22 21:24:00 1368
原创 c实现一元多项式加乘
这学期数据结构老师是学校里最严格的而我发现自己落后了别人早就当天就把布置的实验完成了我还........惭愧 连夜补上 虽然自知不好仅作纪念 要加油了/*************************************************************************** * Copyright (C) 2008 by root *多项式 gcc 版本
2008-03-22 11:14:00 1063
原创 Linux命令实现(6) echo
这个恐怕是最简单的了本来我以为如果输入的是$PWD这样的环境变量需要进行相应的转换 没想到这个工作shell已经自动完成了所以只要#include int main(int argc, char *argv[]){ printf("%s",argv[1]); return 0;}我不知道如何关掉shell的这个功能就没法写真正的echo了不过得到环境变量的系统调用函数还是知道的
2008-03-20 16:57:00 796
原创 Linux命令实现(5)pwd
书上所给的例子太复杂我 我认为没有必要不就是返回当前工作目录的绝对录进吗我用getcwd()完成了好像是取巧了 没办法 我现在只会这么写char * getcwd(char *buf,int size)getcwd函数将返回的绝对路径名放在buf所指的数组中并返回buf size要比路径名长度至少大1#include #include #include #include int ma
2008-03-17 18:24:00 611
原创 Linux命令实现(4) ls -l
使用了stat()终于实现读取文件的详细信息#include #include #include #include #include #include #include void do_ls(char[]);void dostat(char *);void show_file_info(char *,struct stat *);void mode_to_letters(int ,char[]);
2008-03-16 22:31:00 651
原创 Linux命令实现(3) 简单的ls
以前以为写ls需要遍历目录什么的看了书才知道只要读取目录文件就可以了里面保存了此目录下的所有文件使用operdir(char *)读取目录文件返回DIR *readdir(DIR *)读记录 返回一个 struct dirent *关闭打开目录closedir(DIR *)dirent结构体里的d_name为文件名这是一个最简单的ls#include #include #include #incl
2008-03-16 15:53:00 686
原创 Linux命令实现(2)cp
再接再励 完成cp//cp.c#include #include #include #include #define BUFFERSIZE 4096#define COPYMODE 0644void oops(char *s1,char *s2);void oops(char *s1,char *s2){ fprintf(stderr,"Error:%s",s1); perror(s
2008-03-14 20:27:00 595
原创 Linux命令实现(1) who
想学Linux c编程 借来的书都千篇一律都是从读写文件到进程通讯和socket感觉没有VC的书丰富 学起来也很枯燥终于借到一本带实例的书Understanding Unix/Linux ProgrammingA Guide to Theroy and Practice一本在实例里教学的书我的目标是自己把Linux的主要命令写一遍先是简单的who读取/var/run/utmp文件 显示出来就可以了
2008-03-14 19:16:00 592
转载 extern用法详解(转)
1 基本解释 extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 另外,extern也可用来进行链接指定。2 问题:extern 变量 在一个源文件里定义了一个数组:char a[6]; 在另外一个文件里用下列语句进行了声明:extern char *a; 请问,这样可以吗? 答案与分析: 1)
2008-03-13 13:43:00 482
原创 c语言 堆栈
老是听说堆栈 其实从来没深究过今天研究c语言内存管理时终于有所了解了一个32位的运行在保护模式下应用程序 无论是Linux 还是Windows 都给它分配一个4GB的平坦的内存空间一个运行着的c程序所占用的内存空间分为代码区 初始化数据区 未初始化数据区 堆区 和 栈区在地址上从高位到地位为(高位)栈区堆区未初始化数据区(即BBS)数据区代码区(低位)栈区存放函数的参数值、局部变量的值 ,由编
2008-03-12 19:23:00 762
原创 Linux学习笔记(2) 关于init
说实话 这个init太深奥 我现在只懂皮毛恐怕要再过一年才能完全掌握它我使用shutdown命令关机在我的笔记本上就没成功过。那天看见学长使用init 0 关机 ,很是神奇就对init研究了一番当系统启动时,首先启动内核,内核调用init来完成引导进程。init启动时,它会在/etc/inittab内查找默认的运行级别:如id : 2 : initdefault :运 行 /etc/rc.d/
2008-03-04 18:08:00 514
原创 Linux学习笔记(1) 当前目录的可执行程序
今天才看到的 解决了我的一大疑问第一次使用gcc居然编译后不能运行 原来如此在linux下执行当前文件夹下的可执行文件前面必须加上./比如用gcc编译一断代码并执行$gcc -o a.out example.c$./a.out第一条命令表示将源代码example.c编译为可执行文件a.out第二条命令执行生成的a.out $ a.out会显示 bash: a.out: command
2008-03-04 18:03:00 1642 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人