[考題] 國考歷屆考題與考題觀念討論(書裡看到的選這個)請附上想法、出處
int *f(int x)
{
int y;
y = x + 10;
return &y;
}
int g(int y)
{
int x;
x = y – 10;
return x;
}
void main( )
{
int *x, y;
x = f(10);
y = g(*x);
printf(“%d %d\n”, *x, y);
}
執行結果為何
小弟認為f() 的return &y是不合理的
y是區域變數lifetime只有到f()結束
回傳給main指定給x不太合理
這樣不就變成dangling pointer
請賜教
謝謝
--
int *f(int x)
{
int y;
y = x + 10;
return &y;
}
int g(int y)
{
int x;
x = y – 10;
return x;
}
void main( )
{
int *x, y;
x = f(10);
y = g(*x);
printf(“%d %d\n”, *x, y);
}
執行結果為何
小弟認為f() 的return &y是不合理的
y是區域變數lifetime只有到f()結束
回傳給main指定給x不太合理
這樣不就變成dangling pointer
請賜教
謝謝
--
All Comments