91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2021-07-14 16:21:58 來源:億速云 閱讀:286 作者:Leah 欄目:編程語言

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

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

     > File Name: trim.c

     > Author: 

     > Mail: 

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

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

#include<stdio.h>

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

   : strtrim

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

 輸入參數  : char *is 

 輸出參數  : 

   : char *

 調用函數  : 

 被調函數  : 

 

 修改歷史      :

  1.       : 20181112

           : strtrim

    修改內容   : 新生成函數

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

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;

    //給字符串添加字符結束標志

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

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

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

    returns;

}

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

   : strtrimc

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

 輸入參數  : char * s

 輸出參數  : 

   : char *

 調用函數  : 

 被調函數  : 

 

 修改歷史      :

  1.       : 20181112

           : strtrim

    修改內容   : 新生成函數

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

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));

}

運行結果

<img src="https://pic1.zhimg.com/v2-8a63cf946682cfbd00b713f82b4c0ab4_b.jpg" data-caption="" data-size="normal" data-rawwidth="517" data-rawheight="86" class="origin_image zh-lightbox-thumb" width="517" data-original="https://pic1.zhimg.com/v2-8a63cf946682cfbd00b713f82b4c0ab4_r.jpg">

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

注意問題

常量區

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

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

指針的返回值問題

<img src="https://pic2.zhimg.com/v2-a0a20ac82107e53ed414d00f8bf849d1_b.jpg" data-caption="" data-size="normal" data-rawwidth="765" data-rawheight="451" class="origin_image zh-lightbox-thumb" width="765" data-original="https://pic2.zhimg.com/v2-a0a20ac82107e53ed414d00f8bf849d1_r.jpg">

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

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

關于C語言 中怎么刪除字符串空白符問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

牡丹江市| 连城县| 琼中| 满城县| 刚察县| 韶关市| 无为县| 甘孜| 瑞金市| 师宗县| 新余市| 体育| 商都县| 沐川县| 疏附县| 登封市| 威信县| 都兰县| 福海县| 灵丘县| 岳阳市| 平阴县| 安义县| 珲春市| 乌兰县| 贵港市| 云霄县| 桦甸市| 莲花县| 绥德县| 会昌县| 敦化市| 贡觉县| 蒙阴县| 郎溪县| 巴林左旗| 咸阳市| 攀枝花市| 武夷山市| 景谷| 隆尧县|