我需要將piece復制到piece1但是我有一個錯誤未初始化的區域變數'piece1'被使用
char* piece = strtok(mp[rech], " ");
while (piece != NULL) {
char* piece1;
strcpy(piece1, piece);
piece = _strrev(piece);
printf("%s ", piece1);
printf("%s ", piece);
piece = strtok(NULL, " ");
}
uj5u.com熱心網友回復:
代碼將未初始化的指標傳遞給
strcpy()導致未定義行為(UB)。char* piece1; strcpy(piece1, piece); // Value in pointer piece1 is not valid提示:啟用所有警告。收到類似的東西
warning: 'piece1' is used uninitialized [-Wuninitialized]
uj5u.com熱心網友回復:
我認為你可以使用:
while (*piece1 = *piece );
您正在遍歷整個字串并將其處理為piece1 我不得不做類似的事情,這應該可行
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/373363.html
上一篇:Heredoc與tmpfile
