這篇文章介紹的是c語言刪除字符串中的首尾空格,但保持中間只有一個空格的實現代碼,希望通過這篇代碼的分享你能有所收獲。源碼如下:
#include<stdio.h>
#include<string.h>
char * deblank(char * str)
{
char * left = str;//前面的指針,負責賦值
char * right = str;//后面尋找非空格字符的指針
while (*right)//截至字符串完
{
if (*right != ' ')
{
if (left<right)
{
*left = *right;//賦值
}
left++;
}
if (*right == ' '&&*(right + 1) != ' ')//尋找到下一個單詞時,對left的操作
{
*left = ' ';
left++;
}
right++;
}
*left = '\0';
return *str != ' ' ?str:(str + 1);//防止首單詞之前有空格現象
}
int main()
{
char str[] = " as adadq k ";
char *a = deblank(str);
int i;
for (i = 0; i < strlen(a); i++)
{
printf("%c",*(a+i));//輸出流
}
return 0;
}關于c語言刪除字符串中的空格的方法就分享到這里了,解決問題并不止文章中和大家分析的辦法,不過本文分析的方法準確性是不容置疑的。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。