C 字串轉換問題,C 如何將整數轉換為字元型別?

發布 科技 2024-02-09
6個回答
  1. 匿名使用者2024-02-05

    使用 ITOA 函式。

    原型:extern char *itoa(int i);

    #include<

    #include<

    int main()

    int a=125;

    char b[50];

    printf("%s",itoa(a,b,10));將十進位 125 中的 10 轉換為字元並輸出。

    return 0;

  2. 匿名使用者2024-02-04

    首先,char 字元應該用 %c 輸出,%d 是整數的輸出,但由於字元和整數是相容的,所以 char 字元也可以用 %d 輸出,雖然輸出結果不是想要的結果......

    由於所有符號都儲存在對應於 0 255 的 ASCII 程式碼中,因此需要將 c=130 轉換為二進位,即記憶體中 c=130 的狀態。

    130 到二進位字串是"1000

    0010"但是,計算機中的資料儲存在補碼中,因此這"10000010"這是乙個補碼,那麼補碼是 1000

    0010的號碼是多少?

    所以輸出 -126 的關鍵是使用 %d。

    d",當出來時,因為“1000”。

    0010“是 8 位,顯然應該很短

    int,因此編譯器會自動將其解釋為"hd",(請注意,最高位為 1),因此它被解釋為 -126

  3. 匿名使用者2024-02-03

    不是同一型別,字元'a'它只占用乙個位元組,字串後面跟著乙個結束字元'\0'因此"a"實際的儲存空間站是兩個位元組,對於。

  4. 匿名使用者2024-02-02

    這是不同的。

    字元'a'在 C Ann ASCII 儲存中。

    字串"a"其中的 A 被乙個字串替換,例如“efw34”或其他什麼,這是乙個字串。

    如果輸入字串 t=“efw34”; 這定義了輸出函式來編寫 printf("%s",t);它等價於 printf( “efw34”);

  5. 匿名使用者2024-02-01

    不是同一型別,在記憶體中“a”占用乙個位元組,“a”占用兩個位元組('a''\0')

  6. 匿名使用者2024-01-31

    不同之處在於,單引號括起乙個字元,雙引號括起乙個字串,字串後面會跟乙個“0”作為字串的結束標誌,“0”也是乙個字元。

相關回答
4個回答2024-02-09

看看這個**。

希望對你有所幫助。 >>>More

7個回答2024-02-09

按照你的思路去做。

方法 1. string strnumber="200m"; >>>More

9個回答2024-02-09

範圍。 你靜態字元 *chh;

static char *ch1;雖然兩個指標指向的位址沒有變化,但你有沒有想過它們指向的記憶體位址是否已經釋放,char chc[10]; 它是本地的,函式已經結束,生命週期已經結束,你正在嘗試使用 void times() 中的指標訪問它。 >>>More

11個回答2024-02-09

首先,有必要了解什麼是二叉樹(我想題主也明白)。 >>>More

24個回答2024-02-09

從右到左運算,-i--所以先計算-i--,運算等級比較高,所以可以寫成-(i--)i--對於8,加乙個-號,所以-i--是8,這時候i--after,i=7,然後-i++是一樣的,可以寫成-(i++)所以-i++是-7,此時i++變成8,--i,執行前減去1,所以--i是7,此時i=7,++i是一樣的,在執行i之前加上1,所以++i是8,此時i=8,然後計算i--,i--仍然等於8,那麼i減一變成7,i++,i++等於7,然後i++,i=8, 所以最後 i=8,然後依次列印出來,注意操作是從右到左,而是從左到右列印 i,i++,i--,i,--i,-i++,i-,這樣複選標記結果就出來了。