永发信息网

C语言的问题,高手进 static 在定义局部变量时是否只能赋值一次,再次定义时就没用

答案:6  悬赏:0  手机版
解决时间 2021-01-04 04:39
int a=4;
int f(int n )
{int t=0;static int a=5;
if(n%2){int a=6;t+=a++;}
else {int a=7; t+=a++;}
return t+=a+=;
]这是其中一段函数,是不是第一个static a=5 定义后,if语句中的对a赋值就没用
最佳答案
static的意思是函数第一次执行时对变量初始化,之后再调用就不再执行该变量初始化,而保留上一次执行的结果。
你函数里面先声明了static int a=5;后面又int a = 6;不是重复定义吗?一个变量可以定义两次?
static int定义后程序里的赋值有用,并且该赋值会保留,不会随函数返回而失效,下一次调用时该变量值还是上一次最后的赋值结果而不是初始定义的值
全部回答
一个是定义了三个float类型变量。另一个是定义了三个float类型变量,并赋初值为0。
static是静态变量,只初始化一次,可以多次赋值。
static意思是静态的。变量分常量和变量。只有常量只能赋值一次。是不是只能赋值一次是靠最后两个字(即常量或者变量)来区分的。 static变量(如:static int n)即静态变量。静态变量也是变量,只有静态常量才只能赋值一次。 变量只用定义一次。建议LZ多看看基本语法。
a=4; int f(int n ) {int t=0;static int a=5; //此处是对static变量的初始化。 if(n%2){int a=6;t+=a++;} //static变量在程序运行期间,只初始化一次。除了赋值操作外,变量                值不变! else {int a=7; t+=a++;} //同上 return t+=a+=;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
金坛区质监局地址有知道的么?有点事想过去!
海参泡多久
单选题下列操作中无需使用玻璃棒的是A.溶解B.
某人阅读答案
饥荒夏天穿好冷背心和野牛帽后果',还有
为了做到合理营养,我国营养学家将食物分成五
肯吃苦吃苦半辈子,怕吃苦吃苦一辈子。什么意
阅读下面这段文字,根据拼音写汉字。(3分)
单选题She’s going to see a
读技校有什么专业男生
杭州哪有批发礼品包装纸的地方?
为什么现在15k的硬盘没有了
单选题现有两个小麦品种A和B。如果想获得具有
在火车上遇到疑似人贩子怎么办
妃嫔媵嫱,王子皇孙,辞楼下殿,辇来于秦;朝
推荐资讯
单选题下列四个集合中,是空集的是A.{x|x2-x+
单选题北宋和南宋类似于A.西汉和东汉B.西晋和
台湾邮政金融卡上的钱怎么才能转到中国工商银
下列配制银氨溶液的操作中,正确的是A.在洁净
商店降价销售某种商品,每件降5元,售出60件
在100mL0.1mol/L的NH4Cl溶液中,离子浓度大小
中学生奥秘百科阅读答案
下列同学的行为属于正确使用网络的是A.王华同
不平不满是什么意思
我的世界1.9龙息怎么用 使用方法介绍
估算下面各题.(1)24.9×3.9≈________想:
健身房如何管理
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?