我有这个练习将给定句子中的第一个字符大写。请我不明白“i - 1”和str [i - 1]是什么意思
#include <stdio.h>
char* ft_strcapitalize(char *str)
{
int i;
i = 0;
while (str[i])
{
if ((i - 1 == 0 && str[i] != ' ')
|| (str[i - 1] >= 'a' && str[i - 1] <= 'z')
|| (str[i - 1] >= 'A' && str[i - 1] <= 'Z')
|| (str[i - 1] >= '1' && str[i - 1] <= '9'))
{
}
else if (str[i] >= 'a' && str[i] <= 'z')
str[i] -= 32;
i++;
}
return (str);
}
int main(void)
{
char s[] = "salut, comment tu vas ? 42mots quarante-deux; cinquante+et+un";
ft_strcapitalize(s);
printf("%s", s);
}