我正在爲我的計算機科學一門課程做一個項目,我無法獲得包含char值的數組的確切大小。首先,程序會提示用戶輸入char值,方法是使用行cin.getline(array,100);
之後,它接受數組,然後向它傳遞一個getSize函數,該函數假定返回數組的實際大小。唯一的問題是它不是不一致的。有時它會返回正確的值,但其他時間則不會。 的getSize功能:如何查找字符數組中非空項目的數量。 C++
int getSize(char arr[]){
int i = 0;
for(i; '\0' != arr[i];i++){
}
return i;
}
實施例: ARR [100]包含5個字符,其餘都爲空,但是當程序運行時該函數返回7。我不確定這是否是一個問題,但程序在將數組發送給size函數之前會修改它。它刪除重複項。
你可以舉一個例子說明它不一致的情況嗎? – rcs
您可以在結果中顯示不一致嗎? – jester
我認爲這有點令人困惑,因爲當你說大小時,你實際上是指在這種情況下非零元素的數量或字符串的長度。 –