我编写了一个程序,可以打印所有英文字母,但是我编写的代码中存在运行时错误。它在哪里?为什么会发生这样的事? 你能帮我解决一下吗?
void printArray(char* p, int len)
{
for( p ; p < p + len ; p++ )
{
printf("%c", *p);
}
printf("\n");
}
int main()
{
char* abc = "abcdefghijklmnopqrstuvwxyz";
printArray(abc, 26);
return 0;
}
最佳答案
什么时候p
不小于p + len
?
for( p ; p < p + len ; p++ ) // Loop forever
你可能想要这样的东西:
char* stop = p + len;
for( p ; p < stop ; p++ )
关于c - 运行时错误 - c 中的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36272312/