C
慢爬小蜗牛
很多文章非原创,错误请自行甄别
展开
-
linux下c调试
调试是每个程序员都会面临的问题. 如何提高程序员的调试效率, 更好更快地定位程序中的问题从而加快程序开发的进度, 是大家共同面对的问题. 可能Windows用户顺口就会说出:用VC呗 :-) , 它提供了设置断点, 单步跟踪等的图形界面, 使调试起来直观易用. 但Linux用户可能要生闷气了 O:-) : 难道我们Linux程序员就只能使用原始的调试方法, 在代码中加入printf信息吗?难道Li转载 2012-04-05 13:45:13 · 490 阅读 · 0 评论 -
C语言实现encode和decode
此文章出处:http://www.cppblog.com/izualzhy/archive/2012/07/09/182456.htmlTechnorati 标签: urlencode,urldecode先看个例子:汉字 一 的UTF-8编码为0xE4 0xb8 0x 80我们在google里搜索一下“一”,地址栏显示为:转载 2012-12-19 19:31:09 · 7667 阅读 · 0 评论 -
C语言中嵌入正则表达式
标准的C和C++都不支持正则表达式,但有一些函数库可以辅助C/C++程序员完成这一功能,其中最著名的当数Philip Hazel的Perl-Compatible Regular Expression库,许多Linux发行版本都带有这个函数库。C语言处理正则表达式常用的函数有regcomp()、regexec()、regfree()和regerror(),一般分为三个步骤,如下所示:转载 2012-12-18 16:36:07 · 616 阅读 · 0 评论 -
宏定义define的使用
#define 定义一个函数举例:#define SEND(fd, ptr, n) { \ if (n != send(fd, ptr, n, 0)) \ { \ printf("sendto failed\n"); \ exit(0); \ } \原创 2012-12-14 10:28:37 · 369 阅读 · 0 评论 -
判断浮点数溢出的方法
出处:http://blog.csdn.net/delphiwcdj/article/details/6261931方法1:判断是否溢出,一是使用函数判断,二是与最大最小值比较#include #include #include int main(){// double类型double dval1 = 1.2;double dval2 = 1.2*p转载 2012-12-26 11:08:35 · 8535 阅读 · 1 评论 -
讲形如12/May/2012 16:19:39转化成时间戳
long GetTick( char *str_time){ struct tm stm; int iY, iM, iD, iH, iMin, iS; memset(&stm,0,sizeof(stm)); char *str1, *token; char *saveptr1; int i = 0, j = 0, conver_mon原创 2012-12-24 15:39:08 · 1066 阅读 · 0 评论 -
将月份英文简写转化成数字
int GetMon(char *str_mon){ int month = 0; const char *list_mon[] = {"Jua","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"}; const char *month_id = str_mon;原创 2012-12-24 15:36:43 · 9897 阅读 · 1 评论 -
用gdb调试core文件
GDB是一个强大的命令行调试工具。大家知道命令行的强大就是在于,其可以形成执行序列,形成脚本。UNIX下的软件全是命令行的,这给程序开发提代供了极大的便利,命令行软件的优势在于,它们可以非常容易的集成在一起,使用几个简单的已有工具的命令,就可以做出一个非常强大的功能。 于是UNIX下的软件比Windows下的软件更能有机地结合,各自发挥各自的长处,组合成更为强劲的功能。而Window转载 2012-09-24 16:54:54 · 11445 阅读 · 0 评论 -
看框架总结
1、使用函数sprintf过程中产生的错误:#include#includeint main(){ char *string = "a good student"; char *str; sprintf(str,"%s",string); printf("%s\n",str); return 0;原创 2012-09-13 18:46:44 · 423 阅读 · 0 评论 -
网络字节序与主机字节序
不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序 最常见的有两种1. Little endian:将低序字节存储在起始地址2. Big endian:将高序字节存储在起始地址LE little-endian 最符合人的思维的字节序 地址低位存储值的低位 地址高位存储值的高位 怎么讲是最符合人的思维的字节序,是因为从人的第一观感转载 2012-09-03 18:21:27 · 549 阅读 · 0 评论 -
map以及类似指针iterator
1.map的构造函数MapmapStudent;2. 数据的插入在构造map容器后第一种:用insert函数插入pair数据#pragma warning (disable:4786) )#include map>#include #include Using namespace std;Int main(){MapmapStudent;转载 2012-08-31 16:12:09 · 10233 阅读 · 0 评论 -
C++中有string类,string是一个类不是一种类型,c语言中没有
前言: string 的角色1 string 使用1.1 充分使用string 操作符1.2 眼花缭乱的string find 函数1.3 string insert, replace, erase 2 string 和 C风格字符串3 string 和 Charactor Traits4 string 建议5 小结6 附录前言: string 的角色C++转载 2012-08-31 16:08:33 · 14526 阅读 · 0 评论 -
c语言中的static变量和static函数
在C语言中,static的字面意思很容易把我们导入歧途,其实它的修饰变量作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'; // global vari转载 2012-08-31 14:32:33 · 3824 阅读 · 0 评论 -
c语言中的连续赋值问题
#include int main() { int a,b,c; a=b=c=21; pr原创 2012-08-31 14:50:01 · 11889 阅读 · 0 评论 -
报错expected specifier-qualifier-list before ‘uint32_t‘
原因:没有在头文件中添加#include原创 2012-07-30 17:26:04 · 8622 阅读 · 5 评论 -
__attribute__((packed))
1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不是紧凑的,用tc的编译器就是紧凑的。例如在gcc下:#include#includetypedef struct STud原创 2012-07-10 18:53:56 · 3219 阅读 · 0 评论 -
C语言文件操作函数大全(看到总结的真的很好,就转载贡献给大家了)
C语言文件操作函数大全clearerr(清除文件流的错误旗标)相关函数 feof表头文件 #include 定义函数 void clearerr(FILE * stream); 函数说明 clearerr()清除参数stream指定的文件流所使用的错误旗标。 返回值 fclose(关闭文件) 相关函数 close,fflush,fopen,setbuf转载 2012-12-20 15:49:11 · 934 阅读 · 0 评论