我对 C 很陌生,在创建以下函数时遇到了困难。我想使用此函数将静态字符数组 (char string[]) 的单词首字母大写。在我看来,它看起来不错,但我遇到了一些可能非常基本的语法错误。编译器错误:
const char' to
错误:从const char*' 初始化参数 1 的 `size_t strlen(const char*)' 分配只读位置的无效转换
void Cap(char string[]){
int i;
int x = strlen(string);
for (i=1;i<x;i++){
if (isalpha(string[i]) && string[i-1] == ' '){
// only first letters of a word.
string[i]= toupper(string[i]);
}if (isalpha(string[0]))
{
string[0]=toupper(string[0]);
}
}
}