亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于定義int age;

http://img1.sycdn.imooc.com//56690fde000125fc06110603.jpg

為什么int age;要放在外面 ?不能放在花括號里面呢?也就是

#include <stdio.h>

int people(int n)

{

int age

if(n==1)

……}

下面的就省略了 ?主要是想知道int age;這個問題

正在回答

3 回答

566bad0c0001550f05000280.jpg

566bad0c0001649805000309.jpg

可以解釋一下嗎



0 回復 有任何疑惑可以回復我~

在這道題當中放外面和你寫的那樣都是可以的,如果你還有一個類似people這樣的函數的時候就有區別了,

放外面另一個方法也能用age這個變量,放里面就不行,這就是全局變量和局部變量的問題,你可以去看看相關

知識

0 回復 有任何疑惑可以回復我~

放外面是全局變量, 只會定義一次,

放里面是局部變量,每調用一次people方法都會初始化,?

然而這里放里面和外面都一樣吧, 因為age改變了也不會影響遞歸,應該只是會浪費內存吧

0 回復 有任何疑惑可以回復我~
#1

super珊__ 提問者

可是我把它放在里面的話 這道題就運行不出來了
2015-12-12 回復 有任何疑惑可以回復我~
#2

Jason333 回復 super珊__ 提問者

沒仔細看主函數,因為你主函數里也用到了age,而如果把age放到里面的話,他的作用域就是people這個函數,只是局部作用,而放到外面就是全局函數,他的作用域是整個類,所以main函數也不需要定義也能使用
2015-12-14 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

關于定義int age;

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號