C裡面的string和String有什麼區別

2022-03-14 08:03:15 字數 5507 閱讀 3328

1樓:

string是c#中的類,string是.net framework的類(在c# ide中不會顯示藍色)

c# string對映為.net framework的string

如果用string,編譯器會把它編譯成string,所以如果直接用string就可以讓編譯器少做一點點工作

如果使用c#,建議使用string,比較符合規範

string始終代表 system.string(1.x) 或 ::

system.string(2.0) ,string只有在前面有using system;的時候並且當前名稱空間中沒有名為string的型別(class、struct、delegate、enum)的時候才代表 system.

string

string是關鍵字,string不是,也就是說string不能作為類、結構、列舉、欄位、變數、方法、屬性的名稱,而string可以

2樓:定復

上面的是官方的連結,lz可以去看看

不是吧string不能作為類、結構、列舉、欄位、變數、方法、屬性的名?我什麼時候都是用string,我基本上沒用過string

那看來我寫的程式都錯了···vs2005和2008都給我過了···

總之我覺得就一樣,用的不過是一個別名而已

c# public static void main(string args)

reflector處理後

vb.net

public shared sub main(byval args as string())

dim a as string = "aaa"

console.writeline(a)

end sub

.net平臺都是通用的,string不過是string的別名而已

看看官方工具的反彙編

.method public hidebysig static void main(string args) cil managed

// end of method program::main

這個是用string的il**

然後我把string修改為string

結果呢?

.method public hidebysig static void main(string args) cil managed

// end of method program::main

自己比較下吧,我覺得都一樣,不行的人可以自己嘗試,這就是一個別名,而且不存在通用性的問題,string和string在c#中用的都是「string」

到了vb程式識別的時候,我覺得他就自然識別為string了以上

3樓:匿名使用者

一樣,string是string的別名

bool\boolean。int\int32 long\int64 都是一樣的

4樓:

一樣的,大寫開頭的是.net cls裡面的,也就是說vb.net 和c++.

net都支援,小寫的是c#語言特性,建議用大寫的,這樣你用c#做的dll可以在vb或者c++直接不出錯誤支援,而你用c#語言的string小寫這個有可能別的語言無法確認。

5樓:匿名使用者

一樣的。。。編譯器看到string在編譯的時候也是按照string編譯的

6樓:匿名使用者

沒區別,一個是.net通用資料型別,一個是c#資料型別

7樓:駱楓法霽

有區別,為什麼呢?可以這樣理解,試想一下,當你帶領一個小組進行開發,這個小組的人呢,有的使用vb,有人使用c#,當然還有可能使用j#和c++。這個時候大家如何進行

有效的溝通

呢?這些人當中對各自使用的語言很精通,但是不懂其它語言,所以.

netframework

提供了common

type

system(cts),所有.net中的各種語言以cts作為基類進行擴充套件,如c#中的string類繼承自cts的string類

。這就使得一個使用不同開發語言的團隊能使用各自熟悉的語言來進行開發,而不用管最後的合成。

c#中string和string有什麼區別?

8樓:雪v歌

完全一樣,沒有區別;

string 和 string(首字母大寫)有區別.

string 型別表示一個字元序列(零個或更多 unicode 字元)。 string 是 .net framework 中 string 的別名。

儘管 string 是引用型別,但定義相等運算子( == 和 !=)是為了比較 string 物件(而不是引用)的值。 這使得對字串相等性的測試更為直觀。

string 表示文字,即一系列 unicode 字元;名稱空間: system ;程式集: mscorlib(在 mscorlib.

dll 中);string 物件稱為不可變的(只讀),因為一旦建立了該物件,就不能修改該物件的值。 看來似乎修改了 string 物件的方法實際上是返回一個包含修改內容的新 string 物件。 如果需要修改字串物件的實際內容,需使用 system.

text .stringbuilder 類

9樓:

在c#中,string 是 system.string 的別名,所以基本上在使用時是沒有差別的。

習慣上,我們把字串當作物件時(有值的物件實體),我們用string。而我們把它當類時(需要字串類中定義的方法),我們用string,比如:

string greet = string.format("hello !", place);

其實亂用也可以,只是這樣概念上清楚一點。

另外string是c#保留字,不可用作變數名,string就不是了。

10樓:匿名使用者

string 是c#的語法支援,string 則是string 對應的真實clr中的型別,兩者是一樣的,也就是說string 只是string的一個別名

string 可以在不引用 任何命令空間的情況下使用

string 必須先引用 system名稱空間

11樓:洋靜

大寫開頭的string 是個類 比如 string str=new string();str="著是個一類"; 定義一個 string資料型別的 變數.小寫開頭的string 是資料型別 比如 int 整型。

12樓:匿名使用者

這兩個應該是由區別的,string是c#這種語言的基本資料型別,屬於語法部分的,而string是.net類庫中的

13樓:匿名使用者

string是一維陣列。string[,]是二維陣列。

string和普通的一維陣列不同的是。他的每個元素本身就是又是一個陣列。

而string[,]是二維陣列。就是陣列的每一個元素都必須是長度為2的陣列。

比如有下面的陣列

[[1,2,3],

[2,4]

]那麼這個陣列必定是string型別而不會是string[,]型別。

因為string定義時:陣列的裡的每個元素都是陣列。(只要是陣列就行)

string[,]定義是:陣列的每一個元素都必須是長度為2的陣列。

可見基本上可以理解都是二維陣列但string裡的元素長度可以不相等。

string[,]必須長度一致

14樓:匿名使用者

是同一個東西,你可以試試,在打出string的時候出來的智慧提示,看看string和string的簡介,都是system.string類

本想吐槽一下樓上的,還是算了,什麼類和資料型別的區分,簡直是無稽之談,就算是int,也是system.int32這個類好麼。

如果你非要區分,那只不過是ms把常用的型別,做成了關鍵字使用更方便而已。。

15樓:匿名使用者

string[,]是二維陣列

string是交錯陣列

string[,]的長度是確定的

string長度可以不同

例如string arr= new string[2];

string[0]=new string[5];

string[1]=new string[10];

c#中的string和string有什麼區別?

16樓:淡儉項綢

string是c#中的類,string是.netframework的類(在c#

ide中不會顯示藍色)

c#string對映為.net

framework的string

如果用string,編譯器會把它編譯成string,所以如果直接用string就可以讓編譯器少做一點點工作

如果使用c#,建議使用string,比較符合規範string始終代表

system.string(1.x)

或::system.string(2.0),string只有在前面有using

system;的時候並且當前名稱空間中沒有名為string的型別(class、struct、delegate、enum)的時候才代表system.string

string是關鍵字,string不是,也就是說string不能作為類、結構、列舉、欄位、變數、方法、屬性的名稱,而string可以贊同

17樓:承菲僕鳥

區別很簡單,兩者都代表字串型別,但是為了方便,編譯器支援關鍵字,而string

就是其中一個特殊的關鍵字,就好比是

int與

int32,編譯器已經把int

看作是int32,

你可以理解成,在生成的時候,編譯器會把**中的string

替換成string

c#中string和string的區別是什麼

18樓:雪v歌

完全一樣,沒有區別;

string 和 string(首字母大寫)有區別.

string 型別表示一個字元序列(零個或更多 unicode 字元)。 string 是 .net framework 中 string 的別名。

儘管 string 是引用型別,但定義相等運算子( == 和 !=)是為了比較 string 物件(而不是引用)的值。 這使得對字串相等性的測試更為直觀。

string 表示文字,即一系列 unicode 字元;名稱空間: system ;程式集: mscorlib(在 mscorlib.

dll 中);string 物件稱為不可變的(只讀),因為一旦建立了該物件,就不能修改該物件的值。 看來似乎修改了 string 物件的方法實際上是返回一個包含修改內容的新 string 物件。 如果需要修改字串物件的實際內容,需使用 system.

text .stringbuilder 類

c 裡面的單獨使用

a 好像是下面的 mov a acc 把a寫入cash 處理 mov a acc 把a寫入cash 這個a還是原來的a inc acc 加1 mov acc a 把cash寫回a a應該是 mov a acc 把a寫入cash inc acc 加1 mov acc a 把cash寫回a 處理 在比較...

Matlab中有類似C語言裡面的問號表示式麼

沒有.如果想有matlab實現c語言裡面的問號語句可以使用條件語句。if.end問號表示式原型 object set1 set2 註解 如果 object 為真 則 整個 問號表示式的值為 set1 否則 為 set2 demo string k 1 1 就會執行這句 無緣執行這句 問號表示式巢狀使...

c語言裡面的n 和 n 有什麼區別?各自都在什麼情況

n 是輸出一個 冒號 和一個換行符 n 是輸出一個換行符 僅此而已 c語言中 n 與 n的區別是什麼 n是換行符 n第一個 是轉義字元,也就是說,n在螢幕上顯示 n t 是製表符,就是按下鍵盤的 tab鍵,主要用於縮排 n 是換行附,對應鍵盤的 回車鍵,這兩者區別還是很大的.n代表回車,沒有 n吧 ...