gpt4 book ai didi

c - C中变量的保留值

转载 作者:太空宇宙 更新时间:2023-11-04 06:23:05 24 4
gpt4 key购买 nike

#include <stdio.h>
#include <stdlib.h>

void func(int i);

int main() {


int i;
for(i=0;i<3;i++){
func(i);
}
return 0;
}

void func(int i){

int k;


if(i==0){

k=4;
}

printf("%d\n",k);

示例运行:

4
4
4

谁能解释一下为什么 k 总是等于 4。每次我调用函数时我都在重新定义 k,以及每次调用函数时如何保留 k 的值

最佳答案

你也没有初始化 k ......所以它可能只是在你每次调用函数时重新使用相同的内存位置,而且它恰好在第一次调用时仍然是 4。 ..

试试这个 int k = 0;

关于c - C中变量的保留值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31038049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com