<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    計算機二級C語言字符串的指針以及指向字符串的指針變量

    時間:2025-02-26 03:51:55 C語言 我要投稿
    • 相關推薦

    計算機二級C語言字符串的指針以及指向字符串的指針變量

      1.用指針方法實現一個字符串的存儲和運算

      如:

      char * strp=″china″;

      此處定義了一個字符指針變量strp,變量中存放的是字符串第一個字符的地址。

      C語言對字符串常量是按字符數組處理的,它實際上在內存開辟了一個字符數組用來存放字符串變量,并把字符串首地址賦給字符指針變量strp。

      在輸出時用

      printf(″%s\n″,strp);

      通過字符數組名或字符指針變量可以輸出一個字符串。而對一個數值型數組,是不能企圖用數組名輸出它的全部元素的。

      2.字符指針變量與字符數組

      雖然用字符數組和字符指針變量都能實現字符串的存儲和運算,但它們二者之間是有區別的,不應混為一談,主要有以下幾點:

      (1)字符數組由若干個元素組成,每個元素中放一個字符,而字符指針變量中存放的是地址(字符串的首地址),決不是將字符串放到字符指針變量中。

      (2)對字符數組只能對各個元素賦值,不能用以下辦法對字符數組賦值。

      Char str[14];

      str=″I love China!″;

      而對字符指針變量,可以采用下面方法賦值:

      char *a;

      a=″I love China!″;

      但注意賦給a的不是字符,而是字符串的首地址。

      (3)賦初值時,對以下的變量定義和賦初值:

      char *a=″I love China!″;

      等價于:

      char *a;

      a=″I love China!″;

      而對數組初始化時:

      static char str[14]={″I love China!″};

      不能等價于

      char str[14];

      str[]={″I love China!″};

      即數組可以在變量定義時整體賦初值,但不能在賦值語句中整體賦值。

      (4)在定義一個數組時,在編譯時即已分配內存單元,有確定的地址。而定義一個字符指針變量時,給指針變量分配內存單元,在其中可以放一個地址值,就是說,該指針變量可以指向一個字符型數據,但如果未對它賦予一個地址值,這時該指針變量并未具體指向哪一個字符數據。

      (5)指針變量的值是可以改變的。

      3.字符串處理函數

      C語言中沒有對字符串進行合并、比較和賦值的運算符,但幾乎所有版本的C語言中都提供了有關的庫函數。例如:

      (1)strcat函數:連接兩個字符數組中的字符串

      (2)strcpy函數:字符拷貝函數

      (3)strcmp函數:字符比較函數

      (4)strlen函數:測試字符串長度的函數

      (5)strlwr函數:將字符串中大寫字母轉換成小寫字母

      (6)strupr函數:將字符中小寫字母轉換成大寫字母

    【計算機二級C語言字符串的指針以及指向字符串的指針變量】相關文章:

    c語言使用字符串指針變量與的區別05-05

    C語言入門知識之字符串與指針07-23

    C語言指針變量的類型07-31

    C語言指針變量的運算05-05

    C語言函數指針變量06-04

    c語言指針中的二級指針示例詳解03-02

    C語言的指針12-21

    c語言數組指針變量的說明和使用07-26

    C語言指針教學02-10

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人