①目標
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設、網(wǎng)站設計與策劃設計,尼金平網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設十多年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:尼金平等地區(qū)。尼金平做網(wǎng)站價格咨詢:18982081108
要刪除字符串中的所有空格,
就要篩選出空格字符。
要篩選,就要對首字符做標記。
要所有空格,就要遍歷。
~
②命令行
#include stdio.h
#include stdlib.h
#include ctype.h
~
③定義函數(shù)
void fun(char *str)
{int i=0;
char *p;
/*標記:p=str表示指針指向字符串首地址做標記*/
for(p=str;*p!='\0';p++)
/*遍歷:不等于'\0'表示只要字符串不結束,就一直p++。*/
if(*p!=' ')str[i++]=*p;
/*刪除:如果字符串不等于空格,即有內容就存入字符串。等于空格就不儲存,但是指針還是p++繼續(xù)后移,跳過儲存空格相當于刪除。*/
}
void fun(char *str)
{int i=0;
char *p=str;
while(*p)
{if(*p!=' ')str[i++]=*p;
p++;}
/*除了for循環(huán)遍歷,也可while循環(huán)遍歷。注意 p++在if語句后,不然會漏掉第一個字符。*/
str[i]='\0';
/*循環(huán)完畢要主動添加'\0'結束字符串。*/
~
④主函數(shù)
viod main()
{char str[100];
int n;
printf("input a string:");
get(str);
puts(str);
/*輸入輸出原字符串*/
fun(str);
/*利用fun函數(shù)刪除空格*/
printf("str:%s\n",str);
#includestdio.h
int main()
{char s[200],*p,*q;
gets(s);
printf("You enter \"%s\"\n",s);
for(p=q=s;*p==' ';p++);
for(q=s;*p;)*q++=*p++;
for(p--;*p==' ';p--)*p='\0';
printf("Now:\"%s\"\n",s);
return 0;
}
#includestdio.h
#include?string.h
int?trimSpace(char?*inbuf,?char?*outbuf)
{
int?i=0;
int?n=strlen(inbuf);//
for(i=0;in;i++)
{
if(*(inbuf+i)!='?')
{
*outbuf++=*(inbuf+i);//your?error
}
}
*outbuf=0;//your?error
}
int?main()
{
char?inbuf[100]={0};
char?outbuf[100]={0};
strcpy(inbuf,"???abcdefgdddd????");
trimSpace(inbuf,outbuf);
printf("%s\n",outbuf);
getchar();
return?0;
}
遍歷字符串,遇到空格,即進行刪除。
可以使用第二個字符數(shù)組來保存結果,對空格不復制;也可以不使用第二個字符數(shù)組,而是采用后續(xù)字符覆蓋空格字符的方式,達到刪除效果。
以效率更高的第二種方法為例,代碼如下:
void?del_space(char?*?s)
{
char?*p?=?s;
do{
if(*s?!=?'?')*p++=?*s;
}while(*s++);
}
/*去除字符串右邊空格*/
void
vs_strrtrim(char
*pstr)
{
char
*ptmp
=
pstr+strlen(pstr)-1;
while
(*ptmp
==
'
')
{
*ptmp
=
'\0';
ptmp--;
}
}
/*去除字符串左邊空格*/
void
vs_strltrim(char
*pstr)
{
char
*ptmp
=
pstr;
while
(*ptmp
==
'
')
{
ptmp++;
}
while(*ptmp
!=
'\0')
{
*pstr
=
*ptmp;
pstr++;
ptmp++;
}
*pstr
=
'\0';
}
當前名稱:c語言函數(shù)去除兩端空格 去除字符串兩端的空格
當前路徑:http://chinadenli.net/article36/hihipg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、關鍵詞優(yōu)化、網(wǎng)站建設、App設計、動態(tài)網(wǎng)站、電子商務
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)