真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C語言中怎么刪除字符串空白符

C語言 中怎么刪除字符串空白符,針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)公司始終堅持【策劃先行,效果至上】的經(jīng)營理念,通過多達十余年累計超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的營銷解決方案,現(xiàn)已廣泛運用于各行各業(yè)的客戶,其中包括:成都石牌坊等企業(yè),備受客戶稱贊。

/*************************************************************************

     > File Name: trim.c

     > Author: 

     > Mail: 

     > Created Time: Mon 12 Nov 2018 10:16:04 AM CST

 ************************************************************************/

#include

/*****************************************************************************

 數(shù)  : strtrim

 功能描述  : 刪除行首、行尾空白符號

 輸入?yún)?shù)  : char *is 

 輸出參數(shù)  : 

   : char *

 調(diào)用函數(shù)  : 

 被調(diào)函數(shù)  : 

 

 修改歷史      :

  1.       : 20181112

           : strtrim

    修改內(nèi)容   : 新生成函數(shù)

*****************************************************************************/

char*strtrim(char*s) {

    char*=s;

    char*=s;

    //去掉行首的空格

    while(*p==' '||*p=='\t') 

        ++p;

    //賦值

    while((p !=NULL)&&(q !=NULL)&&(*!='\0')&&(*!='\0'))

    {

        *q++=*p++;

    };

     //刪除'\0'字符注意是-2 上面q++是先操作再自加

    q -=2;

    //去掉行末的空格

    while(*q==' '||*q=='\t') 

        --q;

    //給字符串添加字符結(jié)束標志

    *(q+1) ='\0';

    //這里的return s要注意看好

    //因為p q經(jīng)過一系列操作后,已經(jīng)不是原來的位置,越界了,s還在原來位置,所以return s才是正確的。

    returns;

}

/*****************************************************************************

 數(shù)  : strtrimc

 功能描述  : 刪除字符串空白符,包括行首和行尾

 輸入?yún)?shù)  : char * s

 輸出參數(shù)  : 

   : char *

 調(diào)用函數(shù)  : 

 被調(diào)函數(shù)  : 

 

 修改歷史      :

  1.       : 20181112

           : strtrim

    修改內(nèi)容   : 新生成函數(shù)

*****************************************************************************/

char*strtrimc(char*s )

{

    char*p1 =s;

     char*p2 =s;

     while(*p1 !='\0')

     {

         while(*p1 ==' '||*p1 =='\t')

         {

              p1 ++;

         }

         *p2 ++=*p1++;

     }

     *p2 ='\0';

     return(s);

}

voidmain(void)

{

     charstr[1000]={" adf asdfasldf jjjjjjjjj    iiii "};

     charstr1[1000]={" adf asdfasldf jjjjjjjjj    iiii "};

     puts("Start main.");

    printf("%s\n",strtrimc(str));

     printf("%s\n",strtrim(str1));

}

運行結(jié)果

C語言 中怎么刪除字符串空白符

注意問題

1 常量區(qū)

剛開始的時候,我寫的是char * s = "adfasdfasdfsf adfasdf adfasdfad ";

然后出現(xiàn)段錯誤,這里定義的s,保存在的是常量區(qū),所以不能做賦值等操作,大家對字符串操作的時候要特別注意。

2 指針的返回值問題

C語言 中怎么刪除字符串空白符

原來我返回的是p1 ,p1 p2 s原來是相等的,但是經(jīng)過一系列運算后,他們的值已經(jīng)不相等了,他們的值如上面顯示那樣,所以返回值一直要返回s。

關(guān)于C語言 中怎么刪除字符串空白符問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。


本文名稱:C語言中怎么刪除字符串空白符
本文地址:http://weahome.cn/article/gosjdo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部