摘要: 1. PHP 檔本身的編碼格式是 utf8 用UltraEdit(v11.20a版) 轉換所有ANSI格式的php檔案轉化為UTF-8格式: File --> Conversions --> ASCII to UTF-8 (Unicoding Editing) ( 在UltraEdit中按Advanced --> configuration --> File Handling --> Unicode/UTF-8 Detection --> 剔選Auto detect utf-8 files ) 如有需要時,可執行Remove BOM.php. 當用WinXP 阅读全文
posted @ 2013-02-01 15:43 jeremyatchina 阅读(182) 评论(0) 推荐(0) 编辑
摘要: void * 及Void的用法void含义 void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。 void几乎只有“注释”和限制程序的作用,定义一个void变量没有意义,不妨试着定义: void a; 这行语句编译时会出错,提示“illegal use of type 'void'”。不过,即使void a的编译不会出错,它也没有任何实际意义。 void真正发挥的作用在于: (1) 对函数返回的限定; (2) 对函数参数的限定。 众所周知,如果指针p1和p2的类型相同,那么我们可以直接在p1和p2间互相赋值;如果p1和p2指向不同 阅读全文
posted @ 2013-01-24 23:22 jeremyatchina 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 系统级语言C语言的国际标准,完整版。函式原型: int printf ( const char * format, ... );引數說明:%[flags][width][.precision][length]specifier%[旗標][寬度][.精度][長度修飾]資料型態1. 資料型態(%[旗標][寬度][.精度][長度修飾]資料型態)必填欄位(1.1) 字元/字串%c, %C : 字元, char c; %s : 字元陣列, char buffer[MAX_PATH];%S : 字元陣列(Unicode), wchar buffer[MAX_PATH];[註] %C / %S 並未被收在標 阅读全文
posted @ 2013-01-11 20:34 jeremyatchina 阅读(466) 评论(0) 推荐(0) 编辑
摘要: dmesg cat /var/log/messages more /proc/kmsg 修改proc/sys/kernel/printk在kernel 中模組如果要列印出訊息,由於不能連結一般函式庫,只能與核心的函式庫連結。因此printf() 就不能使用了,只能使用printk()。EX:printk(KERN_DEBUG "Here I am: %s:%i\n", __FILE__, __LINE__);printk(KERN_CRIT "I'm trashed; giving up on %p\n", ptr); 38#define KER 阅读全文
posted @ 2013-01-06 20:33 jeremyatchina 阅读(389) 评论(2) 推荐(0) 编辑
摘要: 看到網路上一篇blog一個問題,引發一群網友的討論。Q:寫一個函數計算當參數為 n(n很大) 時的值 1-2+3-4+5-6+7……+n這是個常見的級數問題,我們必須化簡成closed form 來得到最佳的效率。一般解法: 主要使用 迴圈long fn(long n) { long temp=0; int i,flag=1; if(n<=0) { printf("error: n must > 0); exit(1); } for(i=1;i<=n;i++) { temp=temp+flag*i; flag=(-1)*flag; } return tem... 阅读全文
posted @ 2013-01-03 22:54 jeremyatchina 阅读(418) 评论(0) 推荐(0) 编辑
摘要: vi 是 unix 家族下最功能強大的文字編輯器,讓用戶只要使用一個鍵盤就可以完成所有的編輯。而vim則是 vi 的加強版,甚至在Windows上也找得到 vim 的芳蹤。但 vi/vim 眾多的指令卻經常令初學者卻步,以下就是我所整理出來那些令人卻步的指令:編輯模式指令說明*i在游標位置進入編輯模式I在游標行的第一個非空白字元進入編輯模式*a在游標位置後進入編輯模式*A在游標行的最後一個字元進入編輯模式*o向下新增一行,並進入編輯模式O向上新增一行,並進入編輯模式cc刪除游標行,並進入編輯模式*[ESC]取消指令或退出編輯模式游標移動指令說明*gg移到第一行*G移到最後一行*行數→ G移動到 阅读全文
posted @ 2013-01-03 22:46 jeremyatchina 阅读(249) 评论(0) 推荐(0) 编辑
摘要: warning: ISO C90 forbids mixed declarations and code通常會出現這種warning message是因為變數的宣告太後面在宣告變數的前面不可以有其他的執行運作。但是有執行所用到的變數要距離越近,執行的效率越好的觀點但個人覺得在Interpreter Language而言會比較有作用,因為對C來說,Code Optimization後,應該不會有這個議題存在。 阅读全文
posted @ 2013-01-02 15:55 jeremyatchina 阅读(383) 评论(0) 推荐(0) 编辑
摘要: #include <stdio.h>#include <errno.h> int main (){ FILE * file; file=fopen ("exist.not","rb"); if (file==NULL) { perror("perror"); printf("strerror(errno)=%s\n", strerror(errno)); } else fclose (file); return 0;} 当linux中的C api函数发生异常时,一般会将errno变量(需in 阅读全文
posted @ 2013-01-02 00:09 jeremyatchina 阅读(525) 评论(0) 推荐(0) 编辑
摘要: 在 C 語言裡,要建立一個字元陣列的字串,常常會使用sprintf()這個函數來做格式化的處理。但是實際上,這個函式卻不是那麼「安全」。怎麼說呢?sprintf()的整個介面長的樣子的是:也就是在使用前,必須要先建立好一個字元陣列的空間,再用這個函式把內容填入,下面就是簡單的例子:int tmp = 10;char cstr[20];sprintf( cstr, "%d * %d = %d", tmp, tmp, tmp * tmp );改用snprintf避免buffer overflowint tmp = 10000;char cstr[20];snprintf( cs 阅读全文
posted @ 2012-12-26 22:57 jeremyatchina 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 在下載 linux kernel 時http://www.kernel.org/pub/linux/kernel/v2.6/看到有分成兩種壓縮格式本來想看看到底這兩種壓縮格式有什麼不同先把指令打上免得到時候又忘記了解壓縮 tar.gztar -zxvf filename.tar.gz壓縮 tar.gztar -zcvf filename.tar.gz /folder解壓縮 tar.bz2tar -jxvf filename.tar.bz2壓縮 tar.bz2tar -jcvf filename.tar.bz2 /folder解開 .tartar -xvf filename.tar打包 .tar 阅读全文
posted @ 2012-12-24 03:08 jeremyatchina 阅读(137) 评论(0) 推荐(0) 编辑