查看積分策略說明發表回覆
Discuz! 代碼
提示插入
直接插入
說明訊息

插入粗體文本 插入斜體文本 插入下劃線 置中對齊 插入超級連結 插入信件位址 插入圖像 插入 flash 插入代碼 插入引言 插入列表
刪除線 直線分隔線 虛線分隔線
    
添加文字底框
內容 [字數檢查]:

表情符號

更多 Smilies
字型大小 |||
溫馨提示:本區開放遊客瀏覽。


文章關鍵字 : [功能說明]
(關鍵字可加強搜索準確性, 如關鍵字多於一組, 請以 , 作分隔, e.g. : 阿笨,shiuh,第一笨)

 關閉 URL 識別 | html 禁用
 關閉 表情符號 | 表情符號 可用
 關閉 Discuz! 代碼 | Discuz! 代碼 可用
使用個人簽名
接收新回覆信件通知
推薦放檔網絡空間

檔案(Torent, zip等)
  1. freedl
  2. multiupload
  3. btghost
  4. 便當狗
  5. mediafire
  6. pillowangel
圖片(JPG, GIF等)
  1. hotimg
  2. tinypic
  3. mousems2
  4. imageshack
  5. imm.io
>>>歡迎推薦好用空間


最新10篇文章回顧
psycho

 發表於 2008-12-9 05:23 AM

c++ 請用new 配置計憶體


Dr_Wayne

 發表於 2008-10-29 09:41 PM


引用:
hjw930寫到:
本來是要報名學C
但人數太少沒開成
被介紹去上C++
結果發現不懂C去上C++很慘
只能自己研究
現在遇到一個問體想請教一下


C++ 比 C 語言多了 OO 觀念和一些細節上的不同,所以不是你聽懂 C 就聽的懂 C++。 基本語法 C 和 C++ 只有一些細微上的差異。但並不表示 C++ 就是 C 語言的延伸,請把標準 C++ 視為一個新語言


引用:
hjw930

void show(char ca[])
{
     int i=sizeof(ca);
     char c[ i ];
}


我程式寫這樣,結果編譯失敗
錯誤訊息說陣列配置必須是常數
但我這個函數是要根據傳進來的陣列內容再做處理
事先不知道大小,這樣要如何設定??

另外就是
如果我處理完後想把 c 陣列回傳
應該怎麼做才對?
(我把 void 改成 char 結果說無法把 char陣列改成 char)

[hjw930 在  2008-10-29 05:03 PM 作了最後編輯]


C/C++ 處理陣列傳進函數其實只是傳進一個指標,而不是複製整個陣列進去。所以你在函數裡操作的陣列其實就是原來你傳進去的陣列,因此不需要把傳進去的陣列再回傳回去。 等你看到書上講 pointer(指標)這章你就會明白你的問題要如何解決


bonta

 發表於 2008-10-29 07:29 PM

用指標

void show(char* array, int count);
void main()
{
   int ca[10];
   show(ca, 10);
}

void show(char* array, int count)
{
     for(int i = 0; i < count; ++i) {
      printf("%c", array);
     }
}

[bonta 在  2008-10-29 07:31 PM 作了最後編輯]


hjw930

 發表於 2008-10-29 05:01 PM

本來是要報名學C
但人數太少沒開成
被介紹去上C++
結果發現不懂C去上C++很慘
只能自己研究
現在遇到一個問體想請教一下


void show(char ca[])
{
     int i=sizeof(ca);
     char c[ i ];
}


我程式寫這樣,結果編譯失敗
錯誤訊息說陣列配置必須是常數
但我這個函數是要根據傳進來的陣列內容再做處理
事先不知道大小,這樣要如何設定??

另外就是
如果我處理完後想把 c 陣列回傳
應該怎麼做才對?
(我把 void 改成 char 結果說無法把 char陣列改成 char)

[hjw930 在  2008-10-29 05:03 PM 作了最後編輯]





所在時區為 GMT+8, 現在時間是 2024-11-22 12:36 AM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.019893 second(s), 6 queries , Qzip disabled