亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? unix c++ day01 筆記.txt

?? 因?yàn)樵贑語言草創(chuàng)的年代
?? TXT
字號:
unix C++  day01  筆記

五天的課程計(jì)劃:

	第一天:文件系統(tǒng)
	第二天:多進(jìn)程
	第三天:進(jìn)程間通信
	第四天:網(wǎng)絡(luò)介紹
	第五天:網(wǎng)絡(luò)通信實(shí)戰(zhàn)


	unix下編程習(xí)慣	  1、返回整數(shù)時(shí)   成功返回 0(>0),失敗返回-1(<0)

	                  2、返回指針時(shí)   成功返回正常指針(非空),失敗返回空指針(NULL)
				
			  3、數(shù)據(jù)類型: xxxx_t 表示整數(shù)
		
			  4、要取得數(shù)據(jù)先準(zhǔn)備好存放數(shù)據(jù)的地方:int getxxx( X* buf , ...)

				例:char* buf;          |  chr buf[20];
				    buf=new char[20];
				    getname(buf); 

		顯示主目錄(主路徑)的命令:pwd , echo $HOME 
       
        	顯示所有環(huán)境變量:env 或 set
	
		每個(gè)用戶都有一個(gè)uid,至少屬于一個(gè)組
	
	取得環(huán)境變量:int main(int argc,char* argv[],chr* env[]);    (參看課堂代碼env.cc)
			
		      	 每個(gè)指針指向一個(gè)環(huán)境變量字符串,以NULL為結(jié)束

	    	如果一個(gè)指針數(shù)組沒有告訴元素個(gè)數(shù),一定用NULL作為這個(gè)數(shù)組的結(jié)束標(biāo)記
			
	取得某個(gè)環(huán)境變量的值:char* getenv(const char* name)  (參看課堂代碼getenv.cc)
			      參數(shù)是環(huán)境變量的名字,正確返回環(huán)境變量的值,出錯(cuò)返回NULL
			      頭文件<cstdlib>或<stdlib.h>
			      例:char* p=getenv("PATH");
	
	修改環(huán)境變量的值:int putenv(const char* str);
			  參數(shù)是新的環(huán)境變量和值,正確返回0,出錯(cuò)返回-1
			  頭文件<cstdlib>或<stdlib.h>
			  例:putenv("MYVAR=GOOD");
	
		設(shè)置的環(huán)境變量只對本進(jìn)程或子進(jìn)程有效,當(dāng)前工作目錄也只對本進(jìn)程或子進(jìn)程有效

	進(jìn)程:一份正在執(zhí)行的程序

	      ps -ef 查看系統(tǒng)中運(yùn)行的所有進(jìn)程   PID就是進(jìn)程id
	      ps 查看當(dāng)前終端運(yùn)行的程序
	      ps -l 查看進(jìn)程運(yùn)行的狀態(tài)

		 常見狀態(tài):O 正在運(yùn)行
		     	   S 睡眠,等待調(diào)度
		           R 已裝載,準(zhǔn)備就緒,可以運(yùn)行
		     	   Z 僵死進(jìn)程,已結(jié)束但不釋放資源
		           T 已停止,掛起狀態(tài),處于掛
		      
	      ps -f -p 進(jìn)程號  查看此進(jìn)程的父進(jìn)程
		  init的進(jìn)程id總是1

	用戶信息操作函數(shù):  (參看課堂代碼getenv.cc)

		頭文件:<unistd.h>
			char* getlogin();  得到用戶登錄名
			int getuid();      得到當(dāng)前登錄用戶的用戶ID號
			int geteuid();     得到當(dāng)前運(yùn)行該進(jìn)程的有效用戶ID
		
		頭文件:<pwd.h>
			struct passwd* getpwuid(int userid);    根據(jù)用戶ID取得用戶的完整信息,返回一個(gè)指向passwd的結(jié)構(gòu)指針
			struct passwd* getpwnam(const char* username);  根據(jù)用戶名取得用戶的完整信息
	
	用戶組信息操作函數(shù):
		 
		頭文件:<unistd.h>
			int getgid();    得到當(dāng)前登錄用戶組的ID  
			int getegid();   得到當(dāng)前運(yùn)行:該進(jìn)程的有效用戶組ID
		
		頭文件:<grp.h>
			struct group* getgrgid(int groupid);   根據(jù)一個(gè)組ID取得這個(gè)組的信息(不一定是完整的)

	
文件系統(tǒng):
	
	任何操作系統(tǒng)的文件都是樹形結(jié)構(gòu)。
	
	絕對路徑-----以根開頭的路徑為絕對路徑
	相對路徑-----以當(dāng)前目錄為出發(fā)點(diǎn)的路徑


	目錄操作:(參看課堂代碼:directory.cc)
	
		創(chuàng)建一個(gè)新的目錄:

			int mkdir(const char* name,int mode);

				name---目錄名
				mode---權(quán)限
				頭文件<sys/stat.h>
				成功返回0(大于0),失敗返回-1(小于0)

		刪除一個(gè)目錄:

			int rmdir(const char* name);

				name---目錄名
				頭文件<unistd.h>
				成功返回0(大于0),失敗返回-1(小于0)

		取得當(dāng)前工作目錄:(參看課堂代碼getcwd.cc)

			char* getcwd(char* buf,int size);  

				頭文件<unistd.h> 
				buf用于存放結(jié)果,把取得的當(dāng)前工作目錄放到buf指向的地方,
				buf是事先準(zhǔn)備好的空間地址,必須指定大小
				size是buf的長度,如果buf的長度是len,size通常傳len-1,留一個(gè)存放'\0'
				返回類型與buf中的內(nèi)容是一致的

		改變當(dāng)前工作目錄:
		
			int chdir(const char* name);

				頭文件<unistd.h> 
				name是新目錄名
				成功返回0(大于0),失敗返回-1(小于0)
		
		打開一個(gè)目錄:頭文件<dirent.h>
			
			DIR* opendir(const char* dirname);
				用一個(gè)DIR指針來代表這個(gè)目錄

		讀取目錄中的一個(gè)目錄項(xiàng):
		
			struct dirent* readdir(DID* dirp);
				每次讀取目錄中的一個(gè)目錄項(xiàng)
				根據(jù)返回指針是否為空判斷是否讀完
				dirent結(jié)構(gòu)中,d_name成員用于保存目錄項(xiàng)的名稱。

		關(guān)閉一個(gè)被打開的目錄:

			int closedir(DIR* dirp);
			
		
	文件操作:
		
		打開文件:int open(const char* pathname,int flag,...);
				頭文件<fcntl.h>,<sys/stat.h>,<sys/types.h>

			 	pathname是一個(gè)文件的全名(包含文件路徑)
				flag這是一個(gè)表示文件打開方式的值,它只能從幾個(gè)特定的值中選擇
				(O_RDONLY只讀模式,O_WRONLY只寫模式,O_RDWR讀寫方式)這三種方式必選其一其只能選一個(gè)

				O_APPEND,追加方式,
				O_CREATE如果文件不存在就創(chuàng)建,這個(gè)模式需要額外提供一個(gè)文件權(quán)限的參數(shù)
				O_EXCL獨(dú)占模式需和O_CREATE聯(lián)合使用,
				O_TRUNC打開文件同時(shí)清空內(nèi)容

			open函數(shù)返回值:是一個(gè)文件描述符,如果其小于0舊表示文件打開操作失敗。
			
			例:int fd=open(argv[1], O_WRONLY|O_CREAT, 0666);
			

		讀文件:size_t read(int fd,void* buf,size_t nbytes)
				頭文件<unistd.h>
				fd是由open函數(shù)返回的文件描述符,表示讀哪個(gè)文件
				buf用于存儲讀入的數(shù)據(jù),即從文件中讀的數(shù)據(jù)放到哪里,在使用read前要為其申請空間
				nbytes要讀多少字節(jié)的數(shù)據(jù)
			返回值:如果執(zhí)行成功,返回一個(gè)>0的整數(shù),表示本次讀取操作實(shí)際讀入的字節(jié)數(shù),失敗返回-1

		寫文件:size_t write(int fd,void* buf,size_t nbytes);
				頭文件<unistd.h>
				fd是由open函數(shù)返回的文件描述符,表示讀哪個(gè)文件
				buf用于存儲要寫入文件的數(shù)據(jù),即要寫的數(shù)據(jù)在哪里
				nbytes想寫入文件多少字節(jié)的數(shù)據(jù)
			返回值:如果執(zhí)行成功,返回一個(gè)>0的整數(shù),表示本次實(shí)際寫入的字節(jié)數(shù),失敗返回-1
			
		關(guān)閉文件:int close(int fildes);
				頭文件<unistd.h>
				fildes是文件描述符
			   	
	文件描述符:由系統(tǒng)內(nèi)核產(chǎn)生,非負(fù)整數(shù),shell產(chǎn)生三個(gè)標(biāo)準(zhǔn)文件描述符(0,1,2)對應(yīng)于(cin,cout,cerr),cin,cout可以重定向,cerr不能重定向
	

	修改與fd對應(yīng)的文件中文件偏移量的值,動(dòng)態(tài)調(diào)整文件指針:
		off_t lseek(int fd,off_t offset,int whence)
	
			fd文件描述符,
			offset文件偏移量,
			whence移動(dòng)策略(以哪里為基準(zhǔn))
				  SEEK_SET,文件首,偏移量需為非負(fù),
				  SEEK_CUR,文件當(dāng)前位置,
				  SEEK_END文件尾,偏移量需為負(fù)值
			返回值:成功返回>0的整數(shù),表示挪動(dòng)的字節(jié)數(shù),失敗返回<0的數(shù)

		注意如果偏移量的設(shè)置不正確會遭成文件空洞
	文件權(quán)限判斷:

		int access(const char* path,int amode)
			path:文件名
			amode:判斷的模式,R_OK,讀權(quán)限 W_OK,寫權(quán)限 X_OK,執(zhí)行權(quán)限 F_OK,文件是否存在
			返回值為0或大于0操作成功,小于0操作失敗。


作業(yè): 1、寫一個(gè)程序,在當(dāng)前用戶的主目錄下建一個(gè)子目錄名叫data,權(quán)限0755,
	在這個(gè)子目錄中建一個(gè)文件a.txt,在文件中寫一些數(shù)據(jù),如:hello,UNIXC!

      2、寫一個(gè)程序,實(shí)現(xiàn)產(chǎn)生不重復(fù)的id

		
	
	   

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合九色综合久久久精品综合| 日本高清免费不卡视频| 久久这里都是精品| 国产综合色在线视频区| 久久日韩精品一区二区五区| 国产黄色成人av| 国产精品久久久久久久久免费桃花| 99久久99久久精品免费看蜜桃| 亚洲美女免费在线| 在线播放日韩导航| 久久精品av麻豆的观看方式| 久久久亚洲精华液精华液精华液| 国产一区二区三区视频在线播放| 欧美经典三级视频一区二区三区| 国产+成+人+亚洲欧洲自线| 国产精品电影一区二区三区| 欧美视频在线不卡| 狠狠色丁香婷婷综合| 中文字幕高清不卡| 91传媒视频在线播放| 蜜臀99久久精品久久久久久软件| 欧美国产乱子伦| 欧美精品自拍偷拍| 国产乱码精品一品二品| 亚洲国产视频在线| 久久蜜臀中文字幕| 欧美中文字幕久久| 国产精品亚洲视频| 亚洲一区自拍偷拍| 国产亚洲精品免费| 欧美另类变人与禽xxxxx| 国产一区二区三区电影在线观看| 18欧美亚洲精品| 日韩欧美国产电影| 91蝌蚪porny九色| 精东粉嫩av免费一区二区三区| 亚洲女人的天堂| 精品盗摄一区二区三区| 在线免费av一区| 国产不卡视频一区二区三区| 丝袜亚洲另类欧美| 1000精品久久久久久久久| 欧美一区二区三区免费观看视频| 99久久婷婷国产综合精品电影| 日本欧美一区二区| 亚洲在线视频一区| 亚洲欧洲精品一区二区三区| 久久天天做天天爱综合色| 欧美日韩精品是欧美日韩精品| 成人午夜免费av| 国模套图日韩精品一区二区| 亚洲第一激情av| 亚洲美女一区二区三区| 国产精品美女久久久久久2018| 91精品一区二区三区久久久久久 | 久久99精品国产| 亚洲香肠在线观看| 亚洲欧美激情插| 国产精品美女久久久久久| 久久嫩草精品久久久久| 精品免费视频一区二区| 日韩一区二区电影在线| 欧美日韩国产首页| 欧美亚洲国产bt| 日本国产一区二区| 91首页免费视频| 一本到不卡免费一区二区| 成人激情免费电影网址| 国产91精品在线观看| 国产成人在线视频播放| 国产福利不卡视频| 国产成人综合精品三级| 国产精品自拍毛片| 国产精品影视在线| 国产成人高清在线| 成人aa视频在线观看| 成人白浆超碰人人人人| 99国产欧美另类久久久精品| 一本久道中文字幕精品亚洲嫩| 91免费在线播放| 欧美视频在线观看一区二区| 欧美日韩国产天堂| 日韩美女天天操| 久久女同性恋中文字幕| 国产精品网曝门| 中文字幕一区二区三| 亚洲蜜桃精久久久久久久| 亚洲综合一二区| 免费的国产精品| 国模冰冰炮一区二区| 国产91精品久久久久久久网曝门 | 久久69国产一区二区蜜臀 | 国产麻豆视频一区| 国产高清亚洲一区| 99v久久综合狠狠综合久久| 91久久一区二区| 51精品国自产在线| 久久众筹精品私拍模特| 国产精品麻豆欧美日韩ww| 亚洲自拍偷拍av| 久久精品国产成人一区二区三区| 精品一区二区三区在线播放| 风间由美性色一区二区三区| 一本色道久久综合精品竹菊| 欧美疯狂性受xxxxx喷水图片| 日韩欧美视频一区| 国产精品久久久久一区二区三区 | 99久久国产综合精品麻豆| 在线观看不卡一区| 欧美成人精品3d动漫h| 国产女人18水真多18精品一级做| 亚洲乱码中文字幕综合| 日韩精品一级中文字幕精品视频免费观看| 热久久免费视频| av福利精品导航| 欧美一级xxx| 中文字幕在线不卡一区| 天天做天天摸天天爽国产一区| 国产一区二区三区精品视频| 91久久线看在观草草青青| 日韩欧美精品在线视频| 中文字幕在线观看一区二区| 另类欧美日韩国产在线| 91激情在线视频| 久久先锋影音av鲁色资源| 一区二区三区在线看| 国产另类ts人妖一区二区| 欧美美女喷水视频| 1区2区3区欧美| 国内精品伊人久久久久av影院| 欧美中文字幕一区二区三区| 国产欧美日韩精品在线| 日韩综合小视频| 色女孩综合影院| 日韩一区在线看| 国产一区二区女| 日韩欧美中文一区| 一区二区三区蜜桃| 成人av影视在线观看| 26uuu欧美| 热久久一区二区| 欧美日韩在线播放一区| 综合av第一页| 国产激情视频一区二区三区欧美| 日韩一区二区三区视频在线观看 | 国产女人18毛片水真多成人如厕| 日韩av电影一区| 欧美日韩国产精选| 一区二区三区中文字幕精品精品 | 人人狠狠综合久久亚洲| 91福利在线播放| 亚洲视频在线观看三级| 国产剧情在线观看一区二区| 欧美xxxxxxxxx| 免费观看日韩电影| 欧美一二三在线| 男男gaygay亚洲| 欧美一级艳片视频免费观看| 亚洲永久免费av| 日本国产一区二区| 亚洲最大成人网4388xx| 日本丶国产丶欧美色综合| 亚洲天堂av一区| 在线免费观看日本欧美| 夜夜揉揉日日人人青青一国产精品 | 欧美亚洲动漫精品| 亚洲午夜精品网| 欧美欧美午夜aⅴ在线观看| 亚洲电影一级黄| 欧美理论片在线| 日韩国产在线观看一区| 欧美精品日韩一区| 青青青伊人色综合久久| 精品国产三级a在线观看| 国产一区视频网站| 久久九九全国免费| 福利电影一区二区三区| 亚洲欧洲精品一区二区三区| 色94色欧美sute亚洲线路二| 亚洲精品久久久蜜桃| 欧美日韩国产美| 久久精品国产一区二区三| 2020国产精品久久精品美国| 国产精品亚洲人在线观看| 国产精品二三区| 欧美视频一区在线观看| 蜜臀久久99精品久久久久久9| 欧美videos中文字幕| 大尺度一区二区| 懂色av一区二区夜夜嗨| 国产精品久久久久久妇女6080| 91在线国产观看| 日韩有码一区二区三区| 久久伊人中文字幕| 91在线视频播放地址| 日日夜夜精品视频天天综合网| 欧美va天堂va视频va在线| 成人av资源下载| 日本视频一区二区| 国产精品理伦片|