Linux C
血影雪梦
加油!FIGHT~~~~OH!!!!
展开
-
write和read的不得不说的秘密
今天做《APUE》的习题3.6,写了下面的程序。#include #include #include #include #include int main(void){ int fd; char buf[100]; memset(buf, 0, sizeof(buf)); if((fd=open("temp", O_CRE原创 2012-09-26 14:36:48 · 698 阅读 · 0 评论 -
Linux C实现国际化
Linux C中实现国际化效果需要用到下面几个函数: setlocale bingtextdomain textdomain 还是通过代码说明,我会尽量将注释写详细些。 #include #include #include /*使用宏将gettext包装起来,这样在代码中会省很多事,毕竟要国际原创 2014-01-16 15:37:23 · 685 阅读 · 0 评论 -
automake跨目录和自定义参数
automake的基本用法在IBM官网有很好的说明:http://www.ibm.com/developerworks/cn/linux/l-makefile/ 下面的内容是我总结的“如何在跨目录和自定义参数的情况下使用automake” 关于跨目录: 假设在本目录下还有个test目录,这两个目录都有需要编译的文件,也就是说都需要automake。原创 2014-01-22 11:52:29 · 1636 阅读 · 0 评论 -
Linux C将文本时间转换成系统格式
假设字符串日期的格式是YY-MM-DD HH:MI:SS 示例如下:#include #include typedef char DATEVAL[256]; /*利用系统自带的时间转换函数mktime来检验获取到的时间是否有效返回 -1 表示失败*/static time_tmake_date(原创 2014-01-13 16:28:48 · 758 阅读 · 0 评论 -
养成将初始化和结束的功能封装成方法的习惯
之所以总结这个是因为最近写代码时遇到了很多段错误,而有很大一部分原因是忘记初始化或结束后处理,比如:指针的空间申请和释放。 假设有这么一个结构:typedef struct _TEMP { int X; int Y; char z[20];} _TEMP; 那么如果用结构体指针的话,在使用原创 2014-01-13 16:29:59 · 553 阅读 · 0 评论 -
Linux C转码
说到Linux C下的转码就不得不提到iconv这个函数。还是用代码说话,我会将注释写的详细些。 #include #include //从UTF-8转到GBK,先定义两个宏,万一以后有变动修改下这里即可。#define ICONVFROM “UTF-8”#define ICONVTO “GBK” /*原创 2014-01-13 16:21:49 · 898 阅读 · 0 评论 -
Linux C获取系统时间
Linux C中获取系统日期和时间很简单.只需要用到time.h中的相关函数即可示例如下:#include #define CHECKDATE 0#define CHECKTIME 0/*利用系统自带的时间转换函数mktime来检验获取到的时间原创 2014-01-13 16:03:05 · 659 阅读 · 0 评论 -
原子操作及其重要性
何为“原子操作”呢? 其实说白了,就是一个由多步操作组成,这些步骤要不执行就一个都不执行,如果执行的话,那么从第一步开始到最后一步结束绝对不会被信号等线程调度机制打断。 《APUE》上说的“原子的执行”也就是这个意思了。其重要性在哪呢? 我们知道,CPU在用极快的速度不停地切换运行程序,这样的好处是可以“同时”运行好多程序,但坏处就是可能会造成一些让我们头痛不已的问原创 2012-09-17 18:01:52 · 1240 阅读 · 0 评论 -
带缓存的I/O和不带缓存的I/O的区别
《APUE》的第三章为“不带缓存的I/O”,第五章为“带缓存的I/O”。 首先,我们需要明确一点,上面两个是“术语”,不是“述语”(描述性质的语言)。 其实“不带缓存的I/O”实际上也是带缓存的,只不过此缓存非比缓存,这里的“不带缓存”指的是“不带流缓存”,而这也就是和“带缓存的I/O”的区别了。 下面让我详细解释下:原创 2012-09-25 10:46:34 · 1421 阅读 · 0 评论 -
关于“流”
看《APUE》时多次出现“流”这一概念,那么什么是流呢? 先总结下关于流的一些翻译: 1,流是与磁盘或其他外围设备关联的数据的源或目的地。 2,流是(表达)读写数据的一种可移植的方法,它为一般的I/O操作提供了灵活有效的手段。一个流是一个由指针操作的文件或者是一个物理设备,而这个指针正是指向了这个流。 3,不管是交互原创 2012-09-25 10:50:26 · 718 阅读 · 0 评论 -
APUE学习总结
引言该文档由个人总结,一级标题的序号对应《APUE》第一版的各章,但是二级标题和该书无关,其序号和内容完全是根据个人判断和个人需求进行编写。3.文件I/O本章所说明的函数经常被称之为不带缓存的I/O(与第5章中说明的标准I/O函数相对照)3.1文件I/O函数大多数UNIX文件I/O只需用到5个函数:open、read、write、lseek、close。需注意的是wri原创 2014-09-03 10:22:16 · 2276 阅读 · 0 评论