当我尝试将函数指示器指定给数组时,生成此代码时出现问题?有任何想法吗 ?类型'std :: array <char, 6>'和'char'不兼容
编译器错误:
Types 'std::array<char, 6>' and 'char' are not compatible
这里是我的代码:
void NextHash(std::array<char,6>* state) {
std::string tablica = {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
int j = 5;
for(int i = 0; i < 36; i++) {
if(tablica[i] == state[j]) {
if(i == 35) {
state[j] = tablica[0];
j--;
i=-1;
}
else{
state[j] = tablica[i+1];
i = tablica.size();
}
}
}
}
你有什么问题? –
偏题:'state [j] = tablica [i + 1];'有可能要求'tablica [36]'超出范围。 – user4581301