下面的代碼是給我一個分割故障段錯誤的printfÇ
void parseInput(char usrIn[])
{
char retCmd[MAX_INPUT];
retCmd[0] = usrIn[0];
printf('Debug: %c\n', retCmd[0]);
}
這是用C我的第一個大項目,但我認爲這是printf的給我的錯。但是我不知道。 ..
下面的代碼是給我一個分割故障段錯誤的printfÇ
void parseInput(char usrIn[])
{
char retCmd[MAX_INPUT];
retCmd[0] = usrIn[0];
printf('Debug: %c\n', retCmd[0]);
}
這是用C我的第一個大項目,但我認爲這是printf的給我的錯。但是我不知道。 ..
您的原始行:
printf('Debug: %c\n', retCmd[0]);
printf("Debug: %c\n", retCmd[0]);
謝謝,我會讓這個正確的答案,當時間用完......我從來沒有注意到,即使我應該.. –
您需要確保該數組不是零長度的變化。如果是,則第一個元素爲空,並且當您嘗試訪問數組中不存在的元素時,將會出現段錯誤。可以,或者通過使用int main(int argc, char** argv)
,以及檢查的argc爲argv數組中元素的數目得到使用sizeof(array)/sizeof(array[0])
數組長度。
什麼是'MAX_INPUT',你在打電話時將它傳遞給函數的值?如果你的問題太模糊,很難幫助你。 – insumity
'」 ==>「'........ – Gangadhar
對不起,它的#define MAX_INPUT 64 –