<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

    本博客系個人收集材料及學習記錄之用,各類“大俠”勿擾!

    留言簿(14)

    隨筆分類

    收藏夾

    My Favorite Web Sites

    名Bloger

    非著名Bloger

    搜索

    •  

    積分與排名

    • 積分 - 204325
    • 排名 - 283

    最新評論

    在結構中一般使用字符數組來存儲字符串,那么是否可以用指向字符的指針代替字符數組? 看如下聲明:

    #define LEN 20

    Struct names{

    Char first[LEN];

    Char last[LEN];

    };

    ?

    Struct pnames{

    Char * first;

    Char * last;

    };

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

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

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

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

     這是一段正確的代碼,也能正常運行,但是請思考下字符串存儲在哪里?對于 Struct names 變量 veep 來說,字符串存儲在結構內部;這個結構共分配了 40 字節來存放兩個字符串.然而,對于 Struct pnames 變量 treas 來說,字符串存儲在編譯器存儲字符串常量的任何地方.這個結構存放的只是兩個地址而已,在系統中它總共占用 8 個字節. Struct pnames 結構不為字符串分配任何存儲空間.它只適用于在另外的地方已經為字符串分配了空間.簡單的說, Struct pnames 結構中的指針應該只用來管理那些已經創建的而且在程序其他地方已經分配過空間的字符串.

     再來看看這個限制條件在什么情況下升級為問題:

    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);

     語法方面來說,這段代碼沒有問題,但是考慮下把輸入存儲到哪里了?對會計師來說,他的名字存儲在 accountant 變量的最后一個成員中;這個結構有一個用來存放字符串的數組.對律師來說, scanf() 把字符串放到由 attorney.last 給出的地址中.因為這是個沒有初始化的變量,所有該地址可能是任何值,程序就可以把名字放在任何地方.

     所以,我們如果需要一個結構來存儲字符串,請使用字符數組成員.存儲字符指針有它的用處,但也有被嚴重誤用的可能.

    ?

    ?

    ?

    posted on 2006-11-10 16:15 matthew 閱讀(494) 評論(0)  編輯  收藏 所屬分類: 閱讀筆記
    主站蜘蛛池模板: 欧美好看的免费电影在线观看| 一区二区三区观看免费中文视频在线播放 | 成年女人永久免费观看片| 亚洲综合无码一区二区三区| 男女作爱在线播放免费网站| 曰韩亚洲av人人夜夜澡人人爽 | 免费高清av一区二区三区| 国产成人亚洲精品| 中国在线观看免费高清完整版| 亚洲一区二区三区在线| 成人免费黄色网址| 亚洲精品123区在线观看| 免费的涩涩视频在线播放| 久久亚洲色WWW成人欧美| va亚洲va日韩不卡在线观看| 青青草97国产精品免费观看 | 中文免费观看视频网站| 亚洲人成网男女大片在线播放| 无人在线观看免费高清视频 | 国产精品亚洲色婷婷99久久精品| 免费观看午夜在线欧差毛片| 免费一级毛片在线播放视频免费观看永久| 免费人成年激情视频在线观看| 中国极品美軳免费观看| 亚洲美女中文字幕| 日韩视频免费一区二区三区| rh男男车车的车车免费网站 | 亚洲日本VA午夜在线电影| 国产一区二区三区在线观看免费 | 91短视频在线免费观看| 亚洲夂夂婷婷色拍WW47| 又爽又黄无遮挡高清免费视频| eeuss影院www天堂免费| 久久久亚洲欧洲日产国码aⅴ | 亚洲精品国产精品乱码不卡| 久久精品免费电影| 亚洲免费网站观看视频| 亚洲大尺度无码专区尤物| 无人影院手机版在线观看免费| a毛片成人免费全部播放| 亚洲日韩国产精品无码av|