str string不正確的賦值)為什麼?小弟在陣列和指標上犯糊塗了。求詳詳細細解解

時間 2021-09-03 07:06:17

1樓:可可小夥子

1、您必須明白char str[10];是定義了一個含有十個元素的陣列,而且這十個元素在記憶體中是以連續的儲存單元存放的。其中str是該陣列的陣列名字,而且str還是該陣列的首地址,也就是十個元素中的第一個元素的地址,但務必注意str是一個指標常量,它是不能被賦值的也不能進行自增自減的!例如:

假設你在函式中宣告一個char str[10];作業系統為其分配一個連續的10個儲存單元,假設其首地址是1024,那麼str的不僅代表著陣列的名字而且它的值是1024,是一個常量不能被改變。

2、您指出char str[10];str="string";是錯誤的,因為前面已經指出str只是一個地址,不是變數是不能被賦值的。

3、char *s;是定義的一個指標變數,它指向一個字元型資料,它是可以被賦值的。指標變數和普通變數是一個道理的,不同的只是指標變數存放的是地址,而普通變數存放的是數值或字元等。*s代表的是指標所指向的資料,您用*s="string";是錯誤的,因為*s和其他變數一樣只能存放一個一個字元,而"string"中包含7個字元分別為s,t,r,i,n,g,\0;切勿把*s="string"與s="string"混同,後者是可以的,因為s是一個指標s="string"是把該字串的首地址賦值給了s而不是把string的每個地址都給了s,前面已經指出字串"string" 是存放在連續的儲存單元的,所以可以通過s的遞增來實現對每個元素的訪問。

4、一維陣列的初始化應該是如果元素為整數可用char str[10]={5,4,3,2,1};如果是字元則用char str[10]="string";

最後我幫你指出您的式子錯誤的地方,您在結合書本好好理解一下,因為不能畫圖所以我說的可能繁雜了點!

【一】char s[5]="string";(陣列s僅有5個儲存空間是不能存放7個元素的)

等價於char *s;*s="string";(*s僅能代表一個元素,是不能賦值給它整個陣列的)

【二】char s[5]="string";(錯誤同上 )

等價於char *s; s="string";(這個式子是對的)

【三】char str[10]= ;(字元陣列初始化是不能用這樣的方式的如果是整數則可以,例如:int str[10]=)

等價於char str[10]; *str[10]=;(*str[10]是錯誤的,它本身就不是個指標所以不能用“*”該符號!str[10]只是代表字元陣列的第十個元素,所以不能將怎個字串賦值給他)

正確的式子

char s[10]="string"等價於char *s;s="string";

指標是c語言的難點也是奧祕所在,掌握了指標c語言也不在神祕,推薦你看一本書《c和指標》人民郵電出版社,希望我的回答能幫助到您!

2樓:

char str[10] = "string";這樣寫可以。但分開不行。

因為char str[10]已經為str分配空間了,而且str的地址不能被改變。

而str="string"表示為str指向“string”所在記憶體地址,也就改變了str的地址,因此是錯誤的。

而char str[10] = "string";表明為str分配10個位元組的空間,且用“string”初始化str。

陣列所指的地址是不能被改變的。

3樓:

//下面這行長度不夠啊!

char s[7]="string" ;等價於char *s;*s="string";

char str[10]="string" ; 等價於char str[10]=;

4樓:磊無敵

str是個陣列,當你在程式中寫str時,就是表示str[0]的地址也就是&str[0],這就是為什麼char *p 可以=str的原因。所以str="string";就相當於&str[0] = "string",當然會出錯,一個是地址,還是單個字元,另一個是個字串。在定義變數的時候char s[6]=” string” 是合法的。

注意長度!

在*str[10]=;中,str[10]不是指標,你給他加了一個*是錯誤的,而且他表示的是陣列的第11個字元,就一個字元的長度怎麼能賦"string"呢。

建議你多看書吧,《c++ primer》(第三版)很好。

5樓:

char str[10]; //系統為str陣列分配了空間,str現在是一個常量了

str=” string”; //將堆疊中"string”的地址賦值給str,相當於5 = 3;

你可以用strcpy(str, "string");來實現上述的賦值。

6樓:匿名使用者

抱歉!這個問題不懂哦,請再加油吧!

7樓:匿名使用者

char str[10];str="string";注意陣列初始化方法

char str[10];

char *p="string";

strcpy(str, p);

網路給我們帶來了什麼

8樓:忻巨集峻告好

網路的生活,豐富多彩,寂寞的人兒喜歡

9樓:季以丹卜豐

好處:提供便利的資訊渠道,搭建網上便捷的溝通橋樑;網上辦事(存錢啊、買東西啊、玩網遊、還有交友等等)還有大多數工作方面也與網路緊緊密切聯絡著的。。

壞處:首先第一,豐富的資訊讓現實社會殘酷競爭以及生活的平淡乏味的人有對網路有很強的依賴感,以至於造成青少年因上網成癮而釀成的慘劇時有發生,這是一最大的悲哀的後果之一,還有就是貌似現在大多數都在網上交朋友了,很少在現實當中與人痛痛快快的拉呱了,人與人之間情義變淡,互相的不信任也大多數

多了起來,彷彿少了一些真情實感的交流與溝通,這些也是現實社會很悲哀的結果之一。

10樓:初瓷萌妹

我們現在已經步入了資訊化的時代,電腦已經普及全球。想一想當我們開啟電腦時我們應該怎麼樣呢!網路把世界連成了一家。

給我們帶來了許多好處和壞處。上網可以讓我們獲得更多的知識,讓我們更加聰明,提高我們的社交能力,讓我們學會更強的體現語言表達能力。我們上網還可以查資料,讀美文了解世界的資訊,讓我們的知識更加淵博……但是,上網的好處很多,壞處也不少。

每當我們開啟電腦。看到那些充滿血腥的網路遊戲,看見那些精彩炫色的畫面。會讓一些抵抗能力差的青少年誤入歧途,走上殺人搶劫的犯罪道路。

人如果長期上網的話,會導致視網膜脫落,雙目失明,學習一落千丈,甚至會發生猝死等危險狀況。網路就像一張大網不要讓這張大網,把你網在裡面。我們的面前就是無底深淵。

離它只有一念之差。同學們!退一步海闊天空,讓我們上網前先調整好心態,不要讓網路綁住手腳,不要讓我們掉進那無底深淵……網路給我們帶來的有歡樂,也有痛苦,有好處也有壞處。

讓我們把握住尺寸,讓網路帶給我們的只有知識和快樂吧!讓我們健康的在資訊化的時代裡成長吧!把握住自己就是把握住自己的未來,讓我們的明天更加美好吧!

對我有幫助!

11樓:申綠定湃

網路改變了我們的學習,工作和生活方式,給我們帶來了方便、快捷、讓我們享受跨越國界的無限溝通的樂趣。

12樓:姚綺山其淵

1.網路對於城市的建設和國際上的發展有著更大的影響2.網路對人生活也有十分重要的意義,隨著科學的發達,很多城市人用網際網路來完成購物,這樣不僅節省了時間,免除了舟車勞頓,還有機會買到在本地市場難覓的商品。

同時,對一些追求新奇的白領族、學生族來說,不失為一種時尚的消費方式。其次,網路交易的安全性也是隱患,網民最擔心被人惡意侵犯隱私和被人偷盜銀行賬號和密碼。不過,儘管網上購物存在著利弊的兩面性,但是隻要消費者能夠仔細識別網上物品的真偽,把握購物的分寸,正確合理地參與網路購物的流程,那麼大部分的問題就可以得到有效的避免。

3.網路對農村和農村的教師的影響也是比較大的,雖然他們地處鄉村,但是現在網路還是比較發達的,我們學校幾乎所有的年輕教師都有電腦,也都可以上網,對於教師的工作來說,網路給他們的幫助很大,查詢資料啊,尋找資訊啊,休閒娛樂啊,作用不小。但如果說到深層次的作用,估計不太多,對鄉下的老師來說,網路也就那麼點功效,其他的暫時都用不上,再加上平時工作也忙,根本沒時間研究這個,所以很大的意義是沒有的。

4.對於學生來說呢?網路和像一把雙刃劍.具體如何就不多說了!

13樓:匿名使用者

與2g網路比較起來,3g網路在其產業價值鏈上已經發生了明顯的改變。在3g時代中,隨著新業務的引入,傳統的行動網路價值鏈產生了很大的變化;價值鏈的環節逐漸增多,每個環節的參與者相應增加,各個參與者之間的關係也更加複雜了。除了網路運營商以外,業務提供商(sp)、裝置提供商、內容提供商(cp)都將在這個價值鏈中發揮重要的作用,甚至連銀行這樣的支付單位也由於業務計費系統的改變加入到這個價值鏈中。

可以說,在3g網路中,每一個參與到這個價值鏈中的引數者都可以從3g世界中分得自己的利益,3g經濟已經不僅僅侷限於通訊行業,它所涉及的行業之廣,是前所未有的。分享指南針

3g時代中,企業們可以從中獲得自己的利益,那麼老百姓呢?3g網路能否改變現在移動業務單一的局面,能否開發出所謂的“殺手級”業務,讓老百姓成為3g時代的主人呢?有人曾經說過,如果沒有簡訊這種增值業務的出現,手機是不可能這樣迅猛發展的。

這句話說得的確很有道理。在那段手機話費遲遲居高不下的日子裡,簡訊以其低廉的**、便捷的使用方法受到了眾多老百姓的青睞。2g出了簡訊,3g呢?

有人說3g網路可以讓我們用手機看電影,用手機上網。但自己想想,這樣的業務也許會迎合一部分人的口味,但能迎合大部分老百姓的心意呢?答案是否定的。

暫且不說手機看電影、手機上網使用起來是否方便,單單憑一個“話費高”就足已把老百姓嚇走。事實證明,如果沒有那種類似與簡訊的“殺手級”業務,那麼3g未來的“錢”景是不樂觀的。國外很多開展3g業務的電信運營商都是由於找不到讓老百姓中意的業務,而讓自己陷入“無錢可賺”的地步。

14樓:刀建設殳靜

這個論題我在大學的時候打過,剛好也是反方.,哈哈給你一部分的提綱,你去思考

1、網路使人們變得溝通少===冷漠

2、網路使用不當使人沉迷

3、網路使得網路道德的淪喪(如……)

4、網路使得人們的隱私暴露,安全感降低

5、網路使得人們過於偷懶,不利於人類文明的進步6、網路使得法律正在面臨挑戰,監管力度的艱難7、網路使得人們的文明過於的依賴網路,一旦出現能源、資源的危機,人類的文明將毀於一旦。(因為網路的構建依賴於電腦、電力、晶體片等客觀的物質)

8\^不過有一點要切記,你不能說網路一無是處,你可以承認網路的某些好處,但是你要限定好的你命題應該是:“當網路遭到不正確的使用的時候,網路是弊大於利的”,儘量的把你的對手引導到這個前提下來辯論。如果你不限定你的前提,你們勝利的機率就不高了。

除非對手很差

電腦時間不正確

有可能中病毒了!專改時間的那種 那就是一不小心碰了電池,要不就檢查一下 修改好時間後,點 internet時間 裡的 立即更新 因為你的時間自動和你上次設定儲存的時間同步了,所以 那你就換主機板電池吧 電池快沒電了。換了電池還是這樣的話 就是有個電容出問題。中毒了或是主機板電池沒電 建議換個電池或是...

防止壓力過度的方法不正確的是

很多人都受到壓力過大的困擾,下面防止壓力過度的方法不正確的是 工作堅持事必躬親 a.每天堅持鍛鍊身體。b.定期停止工作休息一下。c.工作堅持事必躬親。d.請求別人的幫助並給別人空間。精神壓力是乙個漢語詞彙,英文是mental stress,拼音是j ngsh ny l 指人在思想上有負擔,有思想包袱...

在Windows中,下列說法不正確的是

話題廣場 b 乙個應用程式視窗與多個應用程式相對應 今天我又瘦了啊 說法不正確的是 b windows的英文意思是視窗,窗戶 複數 的意思,在這裡應該解釋為視窗作業系統,同時它是微軟的乙個產品名稱,因為我們在windows作業系統下工作時不是經常要開啟某個視窗嗎?因此我們把這種作業系統叫做視窗,可視...