CのcharstringA [LEN]とchar * stringB [LEN]の違いは何ですか

Vivek vijayan

私はいくつかの類似した質問、読んC:違いchar型のポインタと配列の間を文字の[]とのchar * sの違いは何ですか?char array []とchar * arrayの違いは何ですか?しかし、それらのどれも私の疑いをクリアするようには見えません。

私はそれを知っています

char *s = "Hello world";

文字列を不変にしますが、

char s[] = "Hello world";

変更することができます。

私の疑問は、私がそうするかどうかでありchar stringA[LEN];char* stringB[LEN];それらは何か違いがありますか?それともstringB、以前のように再び不変になりますか?

ハック

それらは何か違いがありますか?

はい。
変数stringAstringB両方とも配列です。stringA配列であるchar大きさのLENstringBの配列であるchar *大きさのLEN

charchar *は2つの異なるタイプです。stringA長さの文字列を1つだけ保持できますがLEN、の要素は文字列の数をstingB指すことができLENます。

それともstringB、以前のように再び不変になりますか?

の要素が指す文字列stringBが変更可能かどうかは、メモリの割り当て方法によって異なります。文字列リテラルで初期化されている場合

char* stringB[LEN] = { "Apple", "Bapple", "Capple"};  

その後、それらは不変です。の場合には

for(int i = 0; i < LEN; i++)
    stringB[i] = malloc(30)  // Allocating 30 bytes for each element  

strcpy(stringB[0], "Apple");
strcpy(stringB[1], "Bapple");
strcpy(stringB[2], "Capple");  

それらは変更可能です。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Pythonのlen()とcount()の違いは何ですか?

分類Dev

len()と.__ len __()の違いは?

分類Dev

値を検索するときのLENと<> ""の違いは何ですか?

分類Dev

len(contours)= 1の場合のcontoursとcontours [0]の違いは何ですか?

分類Dev

DataFrame.groupby(column).apply(len)とDataFrame [column] .value_counts()の違いは何ですか?

分類Dev

C / CPPのchar []とchar [n]の違いは何ですか?

分類Dev

a [len(a):] = [x]とa [len(a)] = [x]の違い

分類Dev

lenのdocstringの「モジュール」とは何ですか?

分類Dev

Lua 5.1のlua_len()の代替とは何ですか?

分類Dev

lenと出力の問題は何ですか

分類Dev

lenとsizeの違い

分類Dev

char s []とchar * sの違いは何ですか?

分類Dev

'char *'と 'char(*)[100]'の違いは何ですか?

分類Dev

char []とcharの違いは何ですか?

分類Dev

char array []とchar * arrayの違いは何ですか?

分類Dev

Cのchar配列とcharポインタの違いは何ですか?

分類Dev

JavaのcharとCharacterの違いは何ですか?

分類Dev

hexとchar配列の印刷の違いは何ですか?

分類Dev

CとC#またはJAVAのcharの違いは何ですか

分類Dev

関数からchar *とchar []を返すことの違いは何ですか?

分類Dev

VARCHARとCHARの違いは何ですか?

分類Dev

extern char ** environとexternchar * environ []の違いは何ですか

分類Dev

(char *) 'r'と "r"の違いは何ですか?

分類Dev

「+ =」と「= +」の違いは何ですか?

分類Dev

/ * ... * /と/ ** ... * /の違いは何ですか

分類Dev

「.equals」と「==」の違いは何ですか?

分類Dev

$ *と$ @の違いは何ですか

分類Dev

「$(this)」と「this」の違いは何ですか?

分類Dev

list()と[]の違いは何ですか

Related 関連記事

  1. 1

    Pythonのlen()とcount()の違いは何ですか?

  2. 2

    len()と.__ len __()の違いは?

  3. 3

    値を検索するときのLENと<> ""の違いは何ですか?

  4. 4

    len(contours)= 1の場合のcontoursとcontours [0]の違いは何ですか?

  5. 5

    DataFrame.groupby(column).apply(len)とDataFrame [column] .value_counts()の違いは何ですか?

  6. 6

    C / CPPのchar []とchar [n]の違いは何ですか?

  7. 7

    a [len(a):] = [x]とa [len(a)] = [x]の違い

  8. 8

    lenのdocstringの「モジュール」とは何ですか?

  9. 9

    Lua 5.1のlua_len()の代替とは何ですか?

  10. 10

    lenと出力の問題は何ですか

  11. 11

    lenとsizeの違い

  12. 12

    char s []とchar * sの違いは何ですか?

  13. 13

    'char *'と 'char(*)[100]'の違いは何ですか?

  14. 14

    char []とcharの違いは何ですか?

  15. 15

    char array []とchar * arrayの違いは何ですか?

  16. 16

    Cのchar配列とcharポインタの違いは何ですか?

  17. 17

    JavaのcharとCharacterの違いは何ですか?

  18. 18

    hexとchar配列の印刷の違いは何ですか?

  19. 19

    CとC#またはJAVAのcharの違いは何ですか

  20. 20

    関数からchar *とchar []を返すことの違いは何ですか?

  21. 21

    VARCHARとCHARの違いは何ですか?

  22. 22

    extern char ** environとexternchar * environ []の違いは何ですか

  23. 23

    (char *) 'r'と "r"の違いは何ですか?

  24. 24

    「+ =」と「= +」の違いは何ですか?

  25. 25

    / * ... * /と/ ** ... * /の違いは何ですか

  26. 26

    「.equals」と「==」の違いは何ですか?

  27. 27

    $ *と$ @の違いは何ですか

  28. 28

    「$(this)」と「this」の違いは何ですか?

  29. 29

    list()と[]の違いは何ですか

ホットタグ

アーカイブ