如何只初始化一次数组?

本文关键字:一次 数组 初始化 | 更新日期: 2023-09-27 18:13:52

char array[4] = {'1','1','1','1'}
.....
array[0] = 3
array = {'3','1','1','1'}

然而,当它再次循环时,值重置回1,1,1,1

我如何保持3在那里?

如问题所述,如何只初始化一次数组?

因为我计划在do while循环中使用数组来跟踪一些值,每次它再次循环时,值被重置为1,1,1,1。我如何确保它被设置为1,1,1,1一次,当它再次进入循环时,无论改变的值保持不变,而不是再次重置为1,1,1,1。

谢谢!

如何只初始化一次数组?

在循环迭代结束时,array超出作用域。当你在下一次迭代中初始化array时,它会在内存中创建一个全新的char[]。

如果你想保留数组的值,你需要做两件事:

  1. 只初始化一次(即设置为{'1','1','1','1'}一次)
  2. 保持它在迭代的作用域中-即在循环之外声明它(当然是在它上面)。