字符串常量與字符串變量

定義:在一個雙引號“ ”內的字符序列或者轉義字符序列稱爲字符串常量


例如:“HI HI!”  “a”  “\n\t”

這些字符串常量是不能改變的,如果試圖改變指針所指向的內容是錯誤的

因爲字符串常量是存在靜態內存區的,不可以改變

字符串變量,在c語言中沒有純粹的c語言字符串變量,可以通過一個字符數組來體現,這樣就

可以對字符數組中的內容進行改變!

附一段代碼,該代碼將字符串進行分割:


#include<string.h>
#include<stdio.h>
#include<stdlib.h>

static char* re;

static char* sp_strsep(char **s, const char *del)
{
    char *d, *tok;
    if (!s || !*s) return NULL;
    tok = *s;
    d = strstr(tok, del);
    if (d) 
		{
            *s = d + strlen(del);
            *d = '\0';
         }
	else 
         {
            *s = NULL;
         }
  return tok;
}

int main() 
{
    char *ss="chenwenshi";
    const char *dd="wen";
    re=sp_strsep(&ss,dd);
    printf("ss=%s,dd=%s\n",ss,dd);
    printf("%s\n",re);
    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章