亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

可不可以嘗試用while循環來寫呢?

? ? 我在此假設數組長度未知且數組中元素無序,此時用while語句的條件是數組已經遍歷到末尾,可是怎樣確定數組下一個元素為空呢?抑或是利用指針,使指針指向的下一個值為空為止,我該怎樣利用while循環來完成這個功能函數呢?

正在回答

2 回答

C語言的數組有三大特點:1.連續的 2.大小固定 3.數據類型一致

首先數組長度一定是確定的,第二數組可以越界訪問,但是越界后訪問的不是數組的元素而是一個不確定的值。所以你的這個問題即便用指針也無法實現,因為也沒有辦法判斷是否循環到數組的最后一個元素。

2 回復 有任何疑惑可以回復我~
#1

未竟的守護者 提問者

非常感謝!
2015-01-22 回復 有任何疑惑可以回復我~

其實可以用sizeof來算出數組中多少元素~

1 回復 有任何疑惑可以回復我~
#1

未竟的守護者 提問者

感謝你的回答!sizeof和strlen都可以實現數組長度的測量,但是需要導入頭文件<string.h>,這種方法在其他編譯軟件上可以通過,可是在這里編譯卻不能通過所以很頭疼。
2015-01-20 回復 有任何疑惑可以回復我~
#2

Fiona0126 回復 未竟的守護者 提問者

sizeof 是不需要引入頭文件的,strlen需要~ int i,len = sizeof(arr)/sizeof(arr[0]); for(i=0;i<len;i++){ printf("%d\n",arr[i]); }這樣不能通過嗎?
2015-01-20 回復 有任何疑惑可以回復我~
#3

Fiona0126 回復 未竟的守護者 提問者

而且strlen是只能字符串數組的長度的~sizeof則是測這段內存的空間。所以如果數組一開始定義了大小就測不出來了~
2015-01-20 回復 有任何疑惑可以回復我~
#4

未竟的守護者 提問者 回復 Fiona0126

謝謝你了哦
2015-01-22 回復 有任何疑惑可以回復我~
查看1條回復

舉報

0/150
提交
取消

可不可以嘗試用while循環來寫呢?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號