如何正確地宣告常量字串陣列,如何正確地宣告一個常量字串陣列

2021-03-03 21:42:52 字數 4600 閱讀 7223

1樓:折柳成萌

定義:用雙引號(「」)括起來的0個或者多個字元組成的序列儲存:每個字串尾自動加一個 『\0』 作為字串結束標誌(1)在c語言中沒有專門的字串變數,如果想將一個字串存放在變數中以便儲存,必須使用字元陣列,即用一個字元型陣列來存放一個字串,陣列中每一個元素存放一個字元。

例如「char a[10]="love".」

(2)在程式中,字串常量會生成一個「指向字元的常量指標」。當一個字串常量出現於一個表示式中時,表示式所使用的值就是這些字元所儲存的地址,而不是這些字元本身。因此,你可以把字串常量賦值給一個「指向字元 的指標」,例如:

char *a = "123" ; a = "abc";,後者指向這些字元所儲存的地址。但是,你不能把字串常量賦值給一個字元陣列,因為字串常量的直接值是一個指標,而不是這些字元本身。例如:

char a[5];a[0] = "a";就是錯誤的,報錯結果:invalid conversion from 'const char*' to 'char'。

例如:char a[10]="love",的意思就是用字串「love」來初始化字元陣列a的記憶體空間,而陣列的首地址也就是「love」字串的地址。

c語言如何定義一個常量字串

2樓:馬小芳

定義:用雙引號(「」)括起來的0個或者多個字元組成的序列儲存:每個字串尾自動加一個 『\0』 作為字串結束標誌(1)在c語言中沒有專門的字串變數,如果想將一個字串存放在變數中以便儲存,必須使用字元陣列,即用一個字元型陣列來存放一個字串,陣列中每一個元素存放一個字元。

例如「char a[10]="love".」

(2)在程式中,字串常量會生成一個「指向字元的常量指標」。當一個字串常量出現於一個表示式中時,表示式所使用的值就是這些字元所儲存的地址,而不是這些字元本身。因此,你可以把字串常量賦值給一個「指向字元 的指標」,例如:

char *a = "123" ; a = "abc";,後者指向這些字元所儲存的地址。但是,你不能把字串常量賦值給一個字元陣列,因為字串常量的直接值是一個指標,而不是這些字元本身。例如:

char a[5];a[0] = "a";就是錯誤的,報錯結果:invalid conversion from 'const char*' to 'char'。

例如:char a[10]="love",的意思就是用字串「love」來初始化字元陣列a的記憶體空間,而陣列的首地址也就是「love」字串的地址。

3樓:

【方式1】巨集定義

#define string "hello,world"

【方式2】字元陣列

char str=;  //大括號可以去掉//等價於

char str=;

【方式3】字元指標

char *pstr="hello,world";

在java中如何定義一個字串陣列

4樓:匿名使用者

1. java中定義一個字串陣列方式如下,string型別和其他基本型別相似,建立陣列有兩種方式 :

string str=;

string str=;

2.推薦用arrayliststrarray = new arraylist(); 比較靈活。

3.也可以寫為如下格式:class array;     array = new class[number];其中前半句為宣告,後半句為初始化,初始化必須要讓編譯器知道大小,宣告的時候java是不分配記憶體的,只有建立的時候也就是new的時候才會分配記憶體。

5樓:小傻

java中定義一個字串陣列方式如下:

1.string str=;

2.string str=;

string型別和其他基本型別相似,建立陣列時,有上述兩種方式。

6樓:我愛臭屁王

java中定義陣列的型別格式

如下:class array = new class[number];

也可以寫為如下格式:

class array;

array = new class[number];

其中前半句為宣告,後半句為初始化,初始化必須要讓編譯器知道大小,宣告的時候java是不分配記憶體的,只有建立的時候也就是new的時候才會分配記憶體。

因此,你要的實現字串陣列應該如下:

string stringarrayexample = new string[10];

但是我估計樓主不是要問這個問題吧,你是不是想問字元陣列,或者把字串變成字元陣列,實現如下:

string stringexample = "stringexample";

char chararrayexample;

charexample = stringexample .tochararray();

7樓:

stringa=new string[100]

for(i=0;i<100;i++)

8樓:匿名使用者

我也剛學 略懂:

有兩種 一種靜態定義的 還有一種動態定義的;

1靜態定義就是說定義完直接就在電腦堆中分配空間並賦值 比如說:

int score = ;

2動態定義就是說先宣告陣列,讓電腦在堆中分配空間,並不需要先賦值,等到需要時可以賦值比如說:

int score = null ;

....................//省略表示**段score = new int[3] ;

二者區別不是很大 就是先賦值後賦值的問題

9樓:匿名使用者

string s=new string [10];

10樓:

string s =

c語言 如何定義字串陣列

11樓:會飛的小兔子

c語言字串陣列中的每一個元素均為指標,即有諸形如「ptr_array[i]」的指標。由於陣列元素均為指標,因此ptr_array[i]是指第i+1個元素的指標。

例:如二維指標陣列的定義為:char *ptr_array[3]=,,};

擴充套件資料

字串陣列陣列元素表示方法:

陣列元素的一般形式為:陣列名[下標] 其中的下標只能為整型常量或整型表示式。如為小數時,c編譯將自動取整。

例如,a[5],a[i+j],a[i++]都是合法的陣列元素。陣列元素通常也稱為下標變數。必須先定義陣列, 才能使用下標變數。

在c語言中只能逐個地使用下標變數, 而不能一次引用整個陣列。

12樓:金牛多弗朗明哥

方法1, 使用指標陣列:

#include

#include

#include

int main()

;int i=0;

while(strcmp(test[i], " ") != 0)

puts(test[i++]);

system( "pause ");

return 0;

}這個方法比較簡單, 但是問題是這樣的話,字串是常量,無法修改。當然這個問題也可以解決, 比如使用陣列賦值, 然後將 char 陣列首地址賦值給某一個指標即可。

方法2,使用2維陣列:

#include

#include

#include

int main()

;int i=0;

while(strcmp(test[i], " ") != 0)

puts(test[i++]);

system( "pause ");

return 0;

}這樣的話, 問題就是 空間的浪費!

13樓:華光高科

10.3.1-c程式設計基礎-字元陣列與字串

14樓:匿名使用者

char username[n][4]=;

n是字串的個數

c# 裡怎樣定義一個常量陣列?

15樓:匿名使用者

不要拘泥於 const 關鍵字,readonly 關鍵字表示執行時常數

private readonly string m_strposition = ;

看你這個結構下面這種定義更合適

using system.drawing;

private readonly point position = new point ;

16樓:匿名使用者

我學的也不長

應該可以直接寫成陣列!

比如string car = new string[3,3]

17樓:匿名使用者

樓上說的是2維陣列

斑竹說的是定義成一維的話應該是

string car = new string[3]car[0]=3.1;

car[1]=1.5;

car[2]=4.1;

C如何用長度來切分字串陣列,c如何把字串陣列分割成一個一個值

是字串分割陣列吧!如果有明顯的特徵就好辦!string s string useragent www 111111 3333332 s useragent.split new char 沒有明顯特徵,有擷取規律可以用擷取字串和for迴圈配合!string imei 1001100210031004 ...

mybatis中檔案如何正確傳遞字串引數的問題

如果傳遞多個引數的時候,要用個javabean 並寫好get set方法 但是通常傳遞多個引數的時候,會用個一map來傳遞resulttype表示返回一個指定的型別,如果資料庫返回的欄位和實體類欄位不一樣,則可能無法賦值 resultmap表示返回一個指定的對映,就是需要去配置一個實際也是對映到某個...

c如何將類中的所有字串組成陣列

public const string bj 北京 public const string sh 上海來 public const string sz 深證 public const string 本身這種寫法源就是一個累贅,你直接寫成這樣不就完事 listli new list 在city類里弄一...