私はCを初めて使用し、ポインターを介して構造体のメンバーを参照したときに得られる結果に混乱しています。例については、次のコードを参照してください。初めてtst->numberを参照するとどうなりますか?私がここで見逃している基本的なことは何ですか?
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int number;
} Test;
Test* Test_New(Test t,int number) {
t.number = number;
return &t;
}
int main(int argc, char** argv) {
Test test;
Test *tst = Test_New(test,10);
printf("Test.number = %d\n",tst->number);
printf("Test.number = %d\n",tst->number);
printf("Test.number = %d\n",tst->number);
}
出力は次のとおりです。
Test.number = 10
Test.number = 4206602
Test.number = 4206602