所以,我有这段代码:
void stringCounter( char cp[], int counter[] ) {
char c;
for ( int i = 0; strlen(cp); i++ ) {
c = cp[i];
// Checking to see if the variable c is alphanumeric...
if ( isalnum(c) ) {
if ( c >= 'A' && c <= 'Z' ) {
counter[c - 'A']++;
} else {
counter[26]++;
}
}
}
return;
}
我在第5行(我列出的代码中)有一个错误的访问错误。我真的不知道如何解决这个错误!我试过制作指针,尝试不做指针,但实在无法得到它。通常,我可以很好地调试我的程序,但我真的遇到了这个问题 任何帮助表示赞赏。
答案 0 :(得分:2)
您的情况应为i < strlen(cp)
,而不仅仅是strlen(cp)
。
答案 1 :(得分:1)
您只是在没有任何边界检查的情况下递增i
for ( int i = 0; i< strlen(cp); i++ ) {
^^ fix this