这个码一开始是到输入确认出现debug说i变量被破坏。按网上说改了代码生成那个为默认值后,现在直接输出完确认后就结束代码运行了
char i[] = {0};
这个太小了
改成
char i[100] = {0};
数组得定义具体大小
不知道你这个问题是否已经解决, 如果还没有解决的话:根据你提供的信息,我无法打开图片链接查看具体的提示信息和代码。但是根据你的描述,我可以给出一些可能导致这个问题的原因和解决方案。
首先,i变量被破坏的问题可能是由以下几个原因引起的:
变量类型错误:确认你在声明i变量时使用了正确的数据类型。例如,如果你打算使用整数类型,应该声明为int而不是其他类型。
变量未初始化:如果没有给i变量一个初始值,它可能会包含垃圾值或者未定义的值。在使用i变量之前,确保对其进行初始化。你可以为其赋一个合适的初始值,或者使用静态/全局变量使其具有默认值。
调用了未定义的函数:确认你在代码中调用的所有函数都是正确定义的。如果调用了未定义的函数,编译器可能无法找到该函数的定义,导致程序不能正确执行。
数组越界:如果你在使用数组时超出了其定义的边界,可能会导致其他变量被破坏。确保在访问数组元素时不会超出其边界。
针对不同的可能原因,以下是一些解决方案的代码示例:
int i; // 声明一个整数类型的变量i
int i = 0; // 声明一个整数类型的变量i,并初始化为0
或者
static int i; // 使用static关键字声明一个静态的整数类型变量i,它将具有默认值0
确认你的代码中所有使用的函数都已正确定义。如果遇到未定义的函数,可以在代码中添加函数定义,或者包含正确的头文件。
int array[10]; // 声明一个包含10个整数的数组
for(int i = 0; i < sizeof(array)/sizeof(array[0]); i++) {
// 循环访问数组元素,确保不会超出边界
}
需要注意的是,以上解决方案仅针对常见的问题原因提供了一些示例。如果问题仍然存在,可能需要进一步检查你的代码逻辑和其他相关细节。
如果你需要更具体的帮助,请提供能够查看代码和提示信息的更详细的信息。