掲示板ランキング  レギュラー(ブルーマウンテン)  レギュラー(マンデリン)


掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板1

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧

No.7460

構造体
投稿者---cat(2007/05/21 22:56:17)


seito2の構造体の
配列要素20のうち, 1要素だけ値を代入したんですが

あとの19要素は,すべてゼロが代入されんでしょうか?

int と doubleは0が入ってるますが
2番目のメンバには1244432のような数字が入りますが
すべて0が代入される分けではないんでしょうか?




#include <stdio.h>

struct seiseki {
    int no;  
    char name[20];
    double average;
};

int main(void)
{
    int i;

    struct seiseki seito1 = { 5, "KASAHARA", 83.5 };
    struct seiseki seito2[20] = {
        { 1, "SAKURAI", 78.6 },
        
    };
    

    printf("%d %s %5.1f\n\n",seito1.no,seito1.name,seito1.average);

    printf("%d %s %5.1f\n",
            seito2[0].no, seito2[0].name, seito2[0].average);
            
    printf("%d %d %5.1f\n",
            seito2[1].no, seito2[1].name, seito2[1].average);

    
    return 0;
}


>


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:構造体 7461 Hermit 2007/05/21 23:10:50
<子記事> Re:構造体 7463 yoh2 2007/05/22 00:52:02


No.7461

Re:構造体
投稿者---Hermit(2007/05/21 23:10:50)


>printf("%d %d %5.1f\n",seito2[1].no, seito2[1].name, seito2[1].average);
"%d %s %5.1f\n"の間違いだと思いますが。
seito2[1].name は、ポインタなので、ポインタを整数として表示してるだけだと思います。


この投稿にコメントする

削除パスワード

No.7463

Re:構造体
投稿者---yoh2(2007/05/22 00:52:02)


>あとの19要素は,すべてゼロが代入されんでしょうか?

すべてゼロで初期化されます。ただし、
    struct seiseki seito2[20];
と、ひとつもフィールドを初期化しなければ、全て不定になります。

ここで言う「ゼロで初期化」とは、ビットパターンゼロで埋めるのではなく、
各フィールドの型においてゼロを表すパターンで埋めることを指します。
とはいえ、両者が等価になっている処理系が多いですが。

ちなみに、細かい話ですが、
    struct hogehoge h = { ... };
    int n = 10;
のように、変数宣言と同時に値を設定することは「代入」ではなく「初期化」
といいます。
Cの場合、あまり派手な違いは見えなかったりしますが、C++ではこの違いが
重要になっていたりします。


この投稿にコメントする

削除パスワード

No.7466

Re:構造体
投稿者---cat(2007/05/22 21:58:38)


>ここで言う「ゼロで初期化」とは、
ビットパターンゼロで埋めるのではなく、
各フィールドの型においてゼロを表すパターンで埋めることを指します。

なるほど、そういうことだったんですか。
初期化やC++のことも教えていただき、
ありがとうございます。


この投稿にコメントする

削除パスワード

No.7467

Re:構造体
投稿者---cat(2007/05/22 22:02:12)


hermitさん回答どうもでした!


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧





掲示板提供:(有)リアル・インテグリティ