編寫兩個不同的可執行程式,名稱分別為a和b,b為a的子程序。a程式在a程式中呼叫open函式開啟a.txt檔案。
在b程式不可以呼叫open或者fopen,只允許呼叫read函式來實現讀取a.txt檔案。
(a程式中可以使用 fork與execve函式建立子程序)。
//b程式fork共享檔案識別符號
#include #include
#include
#include
#include
#include
#include
#include
#include
int main(int arg, char *args)
//open the file in read mode
int fd=open("
a.txt
",o_rdonly);
if(fd==-1
)
if(child==0
) ;
sprintf(buf,"%d
",fd);
char * ar**=;
execve(
"../2/tec
",ar**,null);
}else
return0;
}
//execve共享檔案識別符號
#include #include
#include
#include
#include
#include
#include
int main(int arg, char *args)
int fd=atoi(args[1
]);
if(fd<3
)
//read the file
char buf[50]=;
read(fd,buf,
sizeof
(buf));
printf(
"the message is:%s\n
",buf);
//關閉檔案描述符
Linux Linux程式練習五
題目 編寫兩個程序a和b,利用共享記憶體技術,a向共享記憶體寫字串,b將從共享記憶體中讀到的字串在螢幕上列印出來。建立共享記憶體區 include include include include include include include int main int arg,char args p...
程式設計師演算法練習四
給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存 32 位有符號整數,其數值範圍是 231,231 1 根據這個假設,如果反轉後的整數溢位,則返回 0。常...
查詢練習(四)
常見約束 1.not null 非空 2.unique 唯一,可以出現乙個null 3.primary key 主鍵,唯一,非空 4.foreign key 外來鍵,定義主表和從表的關聯關係 從企業管理器看!5.check 檢查,強制資料必須滿足定義的條件,如 sal int check sal 2...