<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 251  文章 - 504  trackbacks - 0
    <2006年11月>
    2930311234
    567891011
    12131415161718
    19202122232425
    262728293012
    3456789

    本博客系個(gè)人收集材料及學(xué)習(xí)記錄之用,各類(lèi)“大俠”勿擾!

    留言簿(14)

    隨筆分類(lèi)

    收藏夾

    My Favorite Web Sites

    名Bloger

    非著名Bloger

    搜索

    •  

    積分與排名

    • 積分 - 202402
    • 排名 - 285

    最新評(píng)論

    在結(jié)構(gòu)中一般使用字符數(shù)組來(lái)存儲(chǔ)字符串,那么是否可以用指向字符的指針代替字符數(shù)組? 看如下聲明:

    #define LEN 20

    Struct names{

    Char first[LEN];

    Char last[LEN];

    };

    ?

    Struct pnames{

    Char * first;

    Char * last;

    };

    答案是可以這樣聲明,但是可能會(huì)遇到麻煩,你得理解其含義.考慮以下的代碼:

    Struct names veep={“Talia”, “Summers”};

    Struct pnames treas={“Brad”, “Fallingjaw”};

    Printf(“%s and %s\n”,veep.first,treas.first);

     這是一段正確的代碼,也能正常運(yùn)行,但是請(qǐng)思考下字符串存儲(chǔ)在哪里?對(duì)于 Struct names 變量 veep 來(lái)說(shuō),字符串存儲(chǔ)在結(jié)構(gòu)內(nèi)部;這個(gè)結(jié)構(gòu)共分配了 40 字節(jié)來(lái)存放兩個(gè)字符串.然而,對(duì)于 Struct pnames 變量 treas 來(lái)說(shuō),字符串存儲(chǔ)在編譯器存儲(chǔ)字符串常量的任何地方.這個(gè)結(jié)構(gòu)存放的只是兩個(gè)地址而已,在系統(tǒng)中它總共占用 8 個(gè)字節(jié). Struct pnames 結(jié)構(gòu)不為字符串分配任何存儲(chǔ)空間.它只適用于在另外的地方已經(jīng)為字符串分配了空間.簡(jiǎn)單的說(shuō), Struct pnames 結(jié)構(gòu)中的指針應(yīng)該只用來(lái)管理那些已經(jīng)創(chuàng)建的而且在程序其他地方已經(jīng)分配過(guò)空間的字符串.

     再來(lái)看看這個(gè)限制條件在什么情況下升級(jí)為問(wèn)題:

    Struct names accountant;

    Struct pnames attorney;

    Puts(“Enter the last name of your accountant:”);

    Scanf(“%s”,accountant.last);

    Puts(“Enter the last name of your attorney”);

    Scanf(“%s”,attorney.last);

     語(yǔ)法方面來(lái)說(shuō),這段代碼沒(méi)有問(wèn)題,但是考慮下把輸入存儲(chǔ)到哪里了?對(duì)會(huì)計(jì)師來(lái)說(shuō),他的名字存儲(chǔ)在 accountant 變量的最后一個(gè)成員中;這個(gè)結(jié)構(gòu)有一個(gè)用來(lái)存放字符串的數(shù)組.對(duì)律師來(lái)說(shuō), scanf() 把字符串放到由 attorney.last 給出的地址中.因?yàn)檫@是個(gè)沒(méi)有初始化的變量,所有該地址可能是任何值,程序就可以把名字放在任何地方.

     所以,我們?nèi)绻枰粋€(gè)結(jié)構(gòu)來(lái)存儲(chǔ)字符串,請(qǐng)使用字符數(shù)組成員.存儲(chǔ)字符指針有它的用處,但也有被嚴(yán)重誤用的可能.

    ?

    ?

    ?

    posted on 2006-11-10 16:15 matthew 閱讀(488) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 閱讀筆記
    主站蜘蛛池模板: 在线jyzzjyzz免费视频| 国产又粗又长又硬免费视频| 亚洲一区二区三区高清视频| 日韩电影免费在线观看视频| 一级人做人爰a全过程免费视频 | 国产精品视频免费| 亚洲а∨天堂久久精品9966| 国产亚洲美日韩AV中文字幕无码成人| 三年片在线观看免费观看大全动漫 | 成年女人免费视频播放体验区| 亚洲六月丁香六月婷婷蜜芽| 亚洲AⅤ无码一区二区三区在线| 免费在线看黄的网站| 亚洲免费综合色在线视频| 亚洲人成图片小说网站| 欧洲乱码伦视频免费| 一级毛片高清免费播放| 亚洲国产成人综合| 一本色道久久综合亚洲精品| 99精品全国免费观看视频| 成人性生交大片免费看好| 亚洲日本va一区二区三区| 亚洲产国偷V产偷V自拍色戒| 日本不卡视频免费| 久久精品国产免费观看三人同眠 | 免费看的黄色大片| 久9这里精品免费视频| 黄色免费网址大全| avtt天堂网手机版亚洲| 久久夜色精品国产亚洲AV动态图| 国产免费131美女视频| 青娱分类视频精品免费2| 免费在线中文日本| 51午夜精品免费视频| 亚洲精品无码少妇30P| 无码乱人伦一区二区亚洲一| 亚洲免费无码在线| 国产人成免费视频| 性色av无码免费一区二区三区| 四虎影视在线影院在线观看免费视频 | 在线观看日本亚洲一区|