必胜高考网_全国高考备考和志愿填报信息平台

必勝高考網 > 計算機類 > 計算機等級 > 資訊 >

計算機等級考試C++學習雜記

時間: 未知2 資訊

  其中fcntl(int fields,int cmd,...)函數中的第一個參數,可以用字符型轉整型函數atoi(argv[i])獲得對參數的FD值,也可以通常定義一個int fd;然后利用open取得.故fcntl的示例如下:

  <1>.int fd=open("new.txt",O_RDONLY);

  if (fcntl(fd,F_GETFL,0)<0)...

  <2>.if (fcntl(atoi(argv[1],O_RDONLY)<0)...

  在steven的 這本書中,關于fcntl函數的運用中,有如下:

  #./a.out 0 < /dev/tty

  結果:read only

  #./a.out 1 >temp.foo

  結果:write only

  #./a.out 1

  結果:read write

  #./a.out 2 2>>temp.foo

  結果:write only,append

  #./a.out 5 5<>temp.foo

  結果:read write

  舉個例子:

  (1).參數問題

  #./pro1 file1 file2>file3

  時,僅有pro1和file1傳遞給了pro1進程,分別作為argv[0],argv[1].

  而file2>file3由shell處理,在fork()之后,執行exec系統調用前,打開文件file3,并將文件file3的句柄復制到file2,

  并在exec時設置文件句柄file2打開.

  1>.所以以上執行時,#./a.out 1 >temp.foo,1是標準輸出,表示STDOUT_FILENO,此時1的句柄被重定向寫到一個文件中,所以

  結果正好是:write only. (temp.foo以只寫方式打開)

  2>.執行#./a.out 1

  這個時候,由于0,1,2句柄都是指向你的登陸終端文件,而該終端是刻度寫的,所以是read write.

  3>.執行#./a.out 2 2>>temp.foo

  時,shell在open temp.foo時,加了個APPEND標志,以表明是追加.

  4>.同樣,執行#./a.out 5 5<>temp.foo時,<為讀出,>為重定向輸入,所以結果為:read write.

  3.文件共享

  UNIX系統支持在不同進程間共享打開的文件.內核使用三種數據結構表示打開的文件.

  <1>.每個進程在進程表中有一個記錄項,記錄項中包含有一張打開文件描述符表,可將其視為一個矢量,每 個描述符占用一項.

  <2>.內核為所有打開文件維持一張文件表.

  <3>.每個打開文件(或設備)都有一個V節點結構.

  4.解釋 int main(int argc,char* argv[ ])中的參數涵義.

  其中argc是命令行參數個數.argv[]是命令行參數

  argv[0]是程序名,argv[1]是第一個參數,可以為一個文件名,一個字符串,或者一個數值.

  argv[2]是第二個參數,依此類推.

  比如有:#./program1 -e new.txt

  其有三個命令行參數,即argc=3

  argv[0]=program1

  argv[1]=-e

  argv[2]=new.txt

  一般若在程序中有:

  if(argc!=2) cout<<"Input parameter"<

  此處的判斷用于檢查是否輸入了應該輸入的參數.實際上在調用程序的時候,并不需要輸入argc的值.

  argc的值是根據你運行程序時的參數個數來定的.

  5.若有int main(int argc,char* argv[])

  則argv在此表示一個字符串數組,由于[]里面的數目是不固定的,故可以指定為任意值。當在引用值時,如:

  string hhstr;

  hhstr=argv[1]; //正確

  hhstr=*argv[1]; //結果確不是一個字符串,而是字符串的第一個字母。

  6.string類型字符串不能賦值給char*的變量。

  7.該是指針參數的地方一定要用引用把地址傳給它,或將指針傳給它。

52764 主站蜘蛛池模板: IPO咨询公司-IPO上市服务-细分市场研究-龙马咨询 | 冰晶石|碱性嫩黄闪蒸干燥机-有机垃圾烘干设备-草酸钙盘式干燥机-常州市宝康干燥 | 刺绳_刀片刺网_刺丝滚笼_不锈钢刺绳生产厂家_安平县浩荣金属丝网制品有限公司-安平县浩荣金属丝网制品有限公司 | 齿轮减速机_齿轮减速电机-VEMT蜗轮蜗杆减速机马达生产厂家瓦玛特传动瑞环机电 | 脉冲除尘器,除尘器厂家-淄博机械 | 纯化水设备-纯水设备-超纯水设备-[大鹏水处理]纯水设备一站式服务商-东莞市大鹏水处理科技有限公司 | 电销卡 防封电销卡 不封号电销卡 电话销售卡 白名单电销卡 电销系统 外呼系统 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 雷冲击高压发生器-水内冷直流高压发生器-串联谐振分压器-武汉特高压电力科技有限公司 | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 扒渣机厂家_扒渣机价格_矿用扒渣机_铣挖机_撬毛台车_襄阳永力通扒渣机公司 | 聚合氯化铝厂家-聚合氯化铝铁价格-河南洁康环保科技 | 自清洗过滤器_全自动过滤器_全自动反冲洗过滤器_量子过滤器-滑漮滴 | 爆破器材运输车|烟花爆竹运输车|1-9类危险品厢式运输车|湖北江南专用特种汽车有限公司 | 医养体检包_公卫随访箱_慢病随访包_家签随访包_随访一体机-济南易享医疗科技有限公司 | 上海公众号开发-公众号代运营公司-做公众号的公司企业服务商-咏熠软件 | 布袋式除尘器|木工除尘器|螺旋输送机|斗式提升机|刮板输送机|除尘器配件-泊头市德佳环保设备 | 电竞学校_电子竞技培训学校学院-梦竞未来电竞学校官网 | 贵州水玻璃_-贵阳花溪闽兴水玻璃厂 | led太阳能路灯厂家价格_风光互补庭院灯_农村市政工程路灯-中山华可路灯品牌 | 都江堰招聘网-都江堰人才网 都江堰人事人才网 都江堰人才招聘网 邢台人才网_邢台招聘网_邢台123招聘【智达人才网】 | 双吸泵,双吸泵厂家,OS双吸泵-山东博二泵业有限公司 | 手持式线材张力计-套帽式风量罩-深圳市欧亚精密仪器有限公司 | 对辊式破碎机-对辊制砂机-双辊-双齿辊破碎机-巩义市裕顺机械制造有限公司 | 上海道勤塑化有限公司 | 哈希余氯测定仪,分光光度计,ph在线监测仪,浊度测定仪,试剂-上海京灿精密机械有限公司 | 全温度恒温培养摇床-大容量-立式-远红外二氧化碳培养箱|南荣百科 | WF2户外三防照明配电箱-BXD8050防爆防腐配电箱-浙江沃川防爆电气有限公司 | 民用音响-拉杆音响-家用音响-ktv专用音响-万昌科技 | 台湾阳明固态继电器-奥托尼克斯光电传感器-接近开关-温控器-光纤传感器-编码器一级代理商江苏用之宜电气 | 重庆私家花园设计-别墅花园-庭院-景观设计-重庆彩木园林建设有限公司 | 润滑脂-高温润滑脂-轴承润滑脂-食品级润滑油-索科润滑油脂厂家 | 包塑丝_高铁绑丝_地暖绑丝_涂塑丝_塑料皮铁丝_河北创筹金属丝网制品有限公司 | 12cr1mov无缝钢管切割-15crmog无缝钢管切割-40cr无缝钢管切割-42crmo无缝钢管切割-Q345B无缝钢管切割-45#无缝钢管切割 - 聊城宽达钢管有限公司 | 杭州双螺杆挤出机-百科 | 高压包-点火器-高压发生器-点火变压器-江苏天网 | 风化石头制砂机_方解石制砂机_瓷砖石子制砂机_华盛铭厂家 | 中宏网-今日新闻-财经新闻| 智慧水务|智慧供排水利信息化|水厂软硬件系统-上海敢创 | 【MBA备考网】-2024年工商管理硕士MBA院校/报考条件/培训/考试科目/提前面试/考试/学费-MBA备考网 |