我正在向函數傳遞char **類型的雙指針。在該函數內部,我需要取消引用指針,然後通過字符數組索引。解引用雙指針並使用索引運算符
不幸的是,當我嘗試將大寫字母分配回數組時,我得到了一個核心轉儲。
我需要關於如何做到這一點的幫助。 (這不是功課,只是一個個人項目。)
void buffer(char **ppline);
int main()
{
char *line="The redcoats are coming!";
buffer(&line);
printf("\nline = %s\n",line);
return(0);
}
void buffer (char **ppline)
{
int i=0;
char a;
for (i=0; i < strlen(*ppline); i++)
{
a = toupper((*ppline)[i]); /* THIS LINE CAUSES THE CORE DUMP */
((*ppline)[i]) = a;
}
return;
}