我一直在尋找一種刪除前導空格的標準方法,並且我發現了一個使用指針和isspace()
的非常簡單的方法,但是我們的教授不允許我們使用<ctype.h>
庫。以下工作?刪除沒有isspace的前後空格()
char LeadingSpace(char *line) {
while (line[0] == ' ') {
line++;
}
return line;
}
我是新的C所以不完全知道如何工作的指針,但如果我移動鼠標指針,每次我找到一個前導空格的話,我將只需要檢查line[0]
,對不對?
是該代碼會做你想做的,但是,如果'line'使用'malloc()函數分配的'你不能使用返回指針'免費()'。另外,它似乎錯過了函數定義中的'*'。最後,你應該知道'isspace()'不僅不會忽略''''而是''\ t'',''\ n''和''\ r''。 –
@iharob好的,非常感謝!從中學到很多東西。 –