随笔 - 493  文章 - 0  评论 - 97  阅读 - 239万

随笔分类 -  Linux_C/C++

上一页 1 2
C语言写文件或日志
摘要:/* 功能: 获取当前系统时间 返回值: 0-成功,-1-失败 out: 保存返回的系统时间,格式由fmt决定 fmt: 0-返回:yyyy-mm-dd hh24:mi:ss, 1-返回:yyyy-mm-dd, 2-返回:hh24:mi:ss*/int getTime(char *out, int fmt) // 获取当前系统时间{ if(out == NULL) return -1; time_t t; struct tm *tp; t = time(NULL); tp = localtime(&t); if(fmt == 0) sprintf(out, "%2.2d-%2 阅读全文
posted @ 2011-04-10 18:25 清清飞扬 阅读(10413) 评论(1) 推荐(1) 编辑
warning: the `gets' function is dangerous and should not be used.
摘要:使用的是 Fedora 10 gcc编译下面程序 显示warning: the `gets' function is dangerous and should not be used.问题出在程序中使用了 gets Linux 下gcc编译器不支持这个函数,解决办法是使用 fgetsfgets()函数的基本用法为:fgets(char * s,int size,FILE * stream);/* 代码实现 */#include <stdio.h>int main ( ) { char name[20]; printf("\n 输入任意字符 : "); f 阅读全文
posted @ 2011-04-10 13:26 清清飞扬 阅读(3089) 评论(1) 推荐(0) 编辑
C获取系统时间
摘要:/* 功能: 获取当前系统时间 返回值: 0-成功,1-失败 out: 保存返回的系统时间,格式由fmt决定 fmt: 0-返回:yyyy-mm-dd hh24:mi:ss, 1-返回:yyyy-mm-dd, 2-返回:hh24:mi:ss*/int getTime(char *out, int fmt) // 获取当前系统时间{ if(out == NULL) return -1; time_t t; struct tm *tp; t = time(NULL); tp = localtime(&t); if(fmt == 0) sprintf(out, "%2.2d-%2. 阅读全文
posted @ 2011-04-09 23:26 清清飞扬 阅读(509) 评论(0) 推荐(0) 编辑
C语言文件操作函数大全
摘要:clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * stream); 函数说明 clearerr()清除参数stream指定的文件流所使用的错误旗标。 返回值 fclose(关闭文件) 相关函数 close,fflush,fopen,setbuf 表头文件 #include<stdio.h> 定义函数 int fclose(FILE * stream); 函数说明 fclose()用来关闭先前fopen()打开的文件。此动作会让缓冲区内的数据写入文件中,并释放系统所 阅读全文
posted @ 2011-04-09 22:10 清清飞扬 阅读(294) 评论(0) 推荐(0) 编辑
C语言的数据类型
摘要:C语言有五种基本数据类型:字符、整型、单精度实型、双精度实型和空类型。尽管这几种类型数据的长度和范围随处理器的类型和C语言编译程序的实现而异,但以b i t为例,整数与CPU字长相等,一个字符通常为一个字节,浮点值的确切格式则根据实现而定。对于多数微机,表2 - 1给出了五种数据的长度和范围。 表中的长度和范围的取值是假定C P U的字长为1 6 b i t。C语言还提供了几种聚合类型(aggregate types),包括数组、指针、结构、共用体(联合)、位域和枚举。这些复杂类型在以后的章节中讨论。除v o i d类型外,基本类型的前面可以有各种修饰符。修饰符用来改变基本类型的意义,以便更准 阅读全文
posted @ 2011-04-09 20:32 清清飞扬 阅读(328) 评论(0) 推荐(1) 编辑
gcc 编译多个源文件
摘要:一. 常用编译命令选项假设源程序文件名为test.c。1. 无选项编译链接用法:#gcc test.c作用:将test.c预处理、汇编、编译并链接形成可执行文件。这里未指定输出文件,默认输出为a.out。2. 选项 -o用法:#gcc test.c -o test作用:将test.c预处理、汇编、编译并链接形成可执行文件test。-o选项用来指定输出文件的文件名。3. 选项 -E用法:#gcc -E test.c -o test.i作用:将test.c预处理输出test.i文件。4. 选项 -S用法:#gcc -S test.i 作用:将预处理输出文件test.i汇编成test.s文件。5. 阅读全文
posted @ 2011-04-08 09:12 清清飞扬 阅读(2082) 评论(0) 推荐(0) 编辑
1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?
摘要:#include <stdio.h>int main() { int i,j,k, c = 0; printf("\n"); for(i=1;i<5;i++) /*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ { printf("%d%d%d\n",i,j,k); c++; // 个数加1 } } printf("count = %d\n", c) 阅读全文
posted @ 2011-04-06 22:45 清清飞扬 阅读(517) 评论(0) 推荐(0) 编辑
获取可执行文件的全路径和所属目录
摘要:主要代码:int GetCurFilePath(char *lpOut) // get full path of the executable file{ char chPath[BUFSIZ] = {0}; int nRetVal = readlink("/proc/self/exe", chPath, sizeof(chPath)); // get full path of the current-executable file if(nRetVal < 0) { strcpy(lpOut, "."); return -1; } else { 阅读全文
posted @ 2011-03-31 14:56 清清飞扬 阅读(1004) 评论(0) 推荐(0) 编辑
dlopen加载c++ 函数及类
摘要:问题所在 有时你想在运行时加载一个库(并使用其中的函数),这在你为你的程序写一些插件或模块架构的时候经常发生。 在C语言中,加载一个库轻而易举(调用dlopen、dlsym和dlclose就够了),但对C++来说,情况稍微复杂。动态加载一个C++库的困难一部分是因为C++的name mangling(译者注:也有人把它翻译为“名字毁坏”,我觉得还是不翻译好),另一部分是因为dlopen API是用C语言实现的,因而没有提供一个合适的方式来装载类。 在解释如何装载C++库之前,最好再详细了解一下name mangling。我推荐您了解一下它,即使您对它不感兴趣。因为这有助于您理解问题是如何产生的 阅读全文
posted @ 2011-03-30 18:17 清清飞扬 阅读(6860) 评论(0) 推荐(2) 编辑

上一页 1 2
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示