Time of Update: 2018-12-03
int i=1; char *p=(char *)&i; if(*p==1) printf("1"); else printf("2");
Time of Update: 2018-12-03
ABI/EABI/OABI http://wiki.debian.org/ArmEabiPortArmEabiPort(..............................)TerminologyStrictlyspeaking, both the old and new ARM ABIs are subsets of the ARM EABIspecification, but in everyday usage the term "EABI" is used to meanthe
Time of Update: 2018-12-03
getopt(分析命令列參數) 相關函數 表標頭檔 #include<unistd.h> 定義函數 int getopt(int argc,char * const argv[ ],const char * optstring); 函數說明 getopt()用來分析命令列參數。參數argc和argv是由main()傳遞的參數個數和內容。參數optstring 則代表欲處理的選項字串。此函數會返回在argv 中下一個的選項字母,此字母會對應參數optstring
Time of Update: 2018-12-03
功能描述: 從檔案系統中刪除一個名稱。如果名稱是檔案的最後一個串連,並且沒有其它進程將檔案開啟,名稱對應的檔案會實際被刪除。 用法: #include <unistd.h>int unlink(const char *pathname);參數: pathname:指向需解除串連的檔案名稱。 返回說明: 成功執行時,返回0。失敗返回-1,errno被設為以下的某個值 EACCES:權能不足 EFAULT: 記憶體空間不可訪問
Time of Update: 2018-12-03
1 "mount_devfs_fs(): unable to mount devfs, err: -2"一個困擾了我很久的問題,主要是ecc的問題。在此我把我的理解說一下好了: 搞清楚你在driver/mtd/nand/s3c2410.c檔案中有沒有把NAND_ECC_SOFT改成NAND_ECC_NONE,這個網上不少的人都會做(聽說會與yaffs檔案系統有衝突,但我發現反而和cramfs檔案系統有衝突)。這個地方我那時候沒有交代清楚,不好意思^_^ 假設你把NAND_
Time of Update: 2018-12-03
三者定義:int inet_aton(const char *cp, struct in_addr *inp);in_addr_t inet_addr(const char *cp);in_addr_t inet_network(const char *cp);三者區別:先說出區別吧,不賣關子。但其實這樣不好,因為我怕你因為知道了結論而不去動手實踐了。(你不會的,是吧? ^_^)紙上得來終覺淺,絕知此事要躬行。inet_addr和inet_network函數都是用於將字串形式轉換為整數形式用的,
Time of Update: 2018-12-03
在有些情況下,我們不希望自己的shell指令碼在運行時刻被中斷,比如說我們寫得shell指令碼設為某一使用者的預設shell,使這一使用者進入系統後只能作某一項工作,如Database Backup, 我們可不希望使用者使用ctrl+C之類便進入到shell狀態,做我們不希望做的事情。這便用到了訊號處理。 kill -l可以列出系統的訊號名稱,如下: -bash-3.00# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5)
Time of Update: 2018-12-03
先來講一個使用linux介面的將unsigned int型或者unsigned long等類型的資料轉化成點分十進位的方法:1.在/usr/include/arpa/inet.h檔案中有inet_ntoa()函數的聲明:extern char *inet_ntoa(struct in_addr __in) __THROW;__in:是struct in_addr的結構體變數.那麼這個結構體變數是個什麼東西呢?我們來看看:struct in_addr{ unsigned long
Time of Update: 2018-12-03
1.經典的約瑟夫環問題:m個猴子圍在一起,數到n的退出,最後剩下的一個就是猴子王--猴子選大王 #include<stdio.h> #include<malloc.h>struct Node{ int data; struct Node *next;};//建立一個節點結構體 int main(){ struct Node *head, *s, *q, *t; int n, m, count=0, i;
Time of Update: 2018-12-03
fwide: stream orientation buffering types: full buffered, line buffered, unbuffered most implementation: stderr is unbuffered, terminal devices are linue buffered, others are full buffered
Time of Update: 2018-12-03
在 Linux 系統中的時鐘,可分為硬體時鐘及系統時鐘。硬體時鐘可以依賴輔助電源(電池)持續累計時間;而系統時鐘則每次重新啟動就會重設,所以一般 Linux 在開機時會做個和硬體時鐘同步的動作(hwclock -s),但是在 Embedded Linux 中是要手動操作的。首先必須正確驅動 S3C2410 的 RTC(Real-Time Clock) 模組才能使用 hwclock 指令,Linux 2.6.10 版本之後應該都有內建驅動,不過在 2.6.14.7 版本中有些問題,會跑出
Time of Update: 2018-12-03
在linux下,線程和進程的概念和處理上,並沒有象其他的作業系統一樣的嚴格區分.線程在linux中,又會稱為輕量級進程.而且和win系統很重要的區別是,在linux下面,建立的線程並不在原進程/線程中,而是通過clone()系統調用,產生了一個和原先的進程/線程完全一樣的進程/線程,並在這個線程中執行線程的函數.POSIX線程編程主要涉及的是POSIX的線程介面和一些相關的線程通訊的機制.下面會介紹相關的POSIX線程的介面,和線程通訊機制,以及一些相應的結構體,在linux的kernel源碼中
Time of Update: 2018-12-03
學習C語言時,指標的學習是比較難的一部分,常常分辨不了*p p &p 的區別。下面是摘抄別人的一段測試程式。以下是我的一小段測試用的程式 void test(){ int a=8; int *p=&a; p=(int *)malloc(N*sizeof(int)); // printf( "%d/n ",*p); //a. cout < <&p;
Time of Update: 2018-12-03
我將ubuntu10.04安裝到了一個8G的隨身碟,但是在系統啟動的時候遇到個問題:desktop方式啟動的時候沒有問題。 但是在字元模式啟動的時候會卡在Checking battery state...這裡不動了,然後按住alt+F1的話能夠啟動,現在這個問題已經解決了,好像是傳給核心的參數,quiet和splash還有text不能同時存在,會有衝突,去掉後,問題解決。 如安裝製作有問題的,有問題的留言給我。
Time of Update: 2018-12-03
printf()函數的參數,在printf()函數讀取時是從左往右讀取的,然後將讀取到的參數放到棧裡面去,最後讀取到的就放在棧頂,處理參數的時候是從棧頂開始的,所以是從右邊開始處理的.--printf()函數的特點. 注意點: 1.printf()函數中的計算是從右向左進行的. 2.我們在寫代碼時,盡量避免無確定意義的運算式出現,因為不同的編譯器,可能會採用不同的理解方式.
Time of Update: 2018-12-03
使用讀寫鎖配置讀寫鎖的屬性之後,即可初始化讀寫鎖。以下函數用於初始化或銷毀讀寫鎖、鎖定或解除鎖定讀寫鎖或嘗試鎖定讀寫鎖。下表列出了本節中討論的用來處理讀寫鎖的函數。表 4–9 處理讀寫鎖的常式 操作相關函數說明初始化讀寫鎖 pthread_rwlock_init 文法讀取讀寫鎖中的鎖 pthread_rwlock_rdlock 文法讀取非阻塞讀寫鎖中的鎖 pthread_rwlock_tryrdlock 文法寫入讀寫鎖中的鎖 pthread_rwlock_wrlock
Time of Update: 2018-12-03
[root@lanhai-linux innet]# cat innet_pton.c#include <sys/socket.h>#include <arpa/inet.h>#include <stdio.h>char IPdotdec[20]; //存放點分十進位IP地址struct in_addr s; // IPv4地址結構體int main (void){ // 輸入IP地址 printf("Please input IP
Time of Update: 2018-12-03
在用eclipse時如果在注釋裡寫了TODO則會自動的添加到TODO LIST裡面去,比如說有個介面沒完善但是現在來不及做了,就在注釋裡寫上TODO,然後後面記上有什麼事情還沒有做,eclipse就會自動的管理這些TODO了。但是Xcode並沒有這個功能,所以只能自己整整了~ 在Xcode3是可以通過#prgram -來實現的,但是Xcode4後這個方法就無效了,於是就繼續google找到了這個方法: 1. 開啟項目介面 2. 點擊“Build
Time of Update: 2018-12-03
最近因為在學習多進程,所以不可避免得要接觸進程的同步和互斥。對於以前學過的概念,因為太久沒去複習已經有點生疏了,於是今天特意找了一下相關的文章來看了一下。這篇東西算是今天學習的筆記。相交進程之間的關係主要有兩種,同步與互斥。所謂互斥,是指散布在不同進程之間的若干程式片斷,當某個進程運行其中一個程式片段時,其它進程就不能運行它們之中的任一程式片段,只能等到該進程運行完這個程式片段後才可以運行。如果用對資源的訪問來定義的話,互斥某一資源同時只允許一個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法
Time of Update: 2018-12-03
http://longtimenoc.com/archives/xcode-4-3-nslog%E4%B8%AD%E6%96%87%E4%B8%8D%E8%BE%93%E5%87%BAbug%E5%8F%8A%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95?replytocom=279這個Bug折騰了我近一天,讀一個檔案,NSLog輸出檔案內容,結果死活讀不完整,不光中文沒有,英文也不全,考慮了編碼,檔案大小,檔案位置等各種可能的因素,嘗試用各種方式重寫這個操作,最後發現