2017-04-30 15 views
0

構造体のパラメータを0に設定したときに、何らかの理由でC言語で作成した構造体を埋めようとしています。C構造体変数が変更を反映しない

struct Quad head_Quad, *temp_Quad; 

head_Quad.ll_x = 0.0; 
head_Quad.ll_y = 0.0; 
head_Quad.side_length = 600; 
temp_Quad = &head_Quad; 
printf("head quad length: %d \n", head_Quad.side_length); 
printf("temp quad length: %d \n", temp_Quad->side_length); 

printf関数が構造体そのものである

以下(温度値が再設定されたかどうかをテストするだけの試みであった)私には0を与えている:

ここ

コードです

typedef struct Quad 
{ 
    double ll_x; //lower left x point 
    double ll_y; //lower left y point 
    double side_length; 
}Quad; 
+0

ああ:)おかげで良いコンパイラは、このような不一致について警告すること – TheRealSoCal

+1

注意を@xingバディでなければなりません。たとえば、 '-Wall'を使ったGCCはこれを行います。 GCCを使用している場合は、 '-Wall -Wextra -Werror'をコマンドラインに追加してください。 –

+0

コンパイラの警告をオンにします。スイッチは永久にオンのままにしておきます。 –

答えて

1

@xingはprintfステートメントで使用していたフラグであることを明示しています。forループの繰り返しがあることがわかっていたはずです。単純なばか。代わりに%dの

それは、%F

関連する問題