全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1063
推到 Plurk!
推到 Facebook!

c++常用語法

答題得分者是:supman
Egn
一般會員


發表:29
回覆:54
積分:16
註冊:2005-04-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-06 11:51:31 IP:61.230.xxx.xxx 未訂閱
請問依下有哪個網站有教長用到的語法嗎,像我現再有一個unsigned char abc[240],和一個unsigned char cde[240],怎麼把cde的內容複製給abc阿...我的書都沒有這些語法ㄝ..
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-06 12:26:48 IP:61.70.xxx.xxx 未訂閱
您好: 使用strcpy就可達到您要的功能.
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-06 13:54:26 IP:210.66.xxx.xxx 未訂閱
去查查 memcpy 怎麼用吧。 如果用 unsigned char 並沒說它是字串。 所以如果用 strcpy 可能會遇到 '\0' 後面的資料就不複製了。 也可能全部240個都沒有 '\0' 也會出問題。
Egn
一般會員


發表:29
回覆:54
積分:16
註冊:2005-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-06 14:03:49 IP:61.230.xxx.xxx 未訂閱
我有用debug模式去看了一下,那個abc裡面內容是 test\0\0\0\0\0\0\0\0\0.. 好幾個,順便問一下喔..為什麼有時當我傳一個參數給function(abc)時,它說無法轉換char to char *....可是假如我改成寫function(&abc)就可以了
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-06-06 15:20:30 IP:61.70.xxx.xxx 未訂閱
您好: 你說的是像以下的狀況嗎? void test (char *s) { } char abc[10]; char a; test(abc); test(a);//這裡就會出現錯誤訊息,原因是如果你是變數,你要傳位址進去,也就是你寫的test(&a),而如果是陣列abc他本身就是位址,因此可以直接test(abc),如果你是要傳abc[0],則要test(&abc[0]); 暗黑大人說的沒錯,小弟沒注意看句中並沒有寫到unsigned char是一個字串,因此如果不是字串將可能出問題. 不過看起來您應該是字串因此,另外再提供strncpy可以設定要copy多少位元. 發表人 - supman 於 2005/06/06 15:33:27
Egn
一般會員


發表:29
回覆:54
積分:16
註冊:2005-04-14

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-06-06 15:31:23 IP:61.230.xxx.xxx 未訂閱
void test (Test1 *s) { } Test1是一個struct 然後用 Test1 abc; test(abc);就會有錯誤.改成test(&abc)就部會有錯... 或宣告改成Test1 *abc,這是為什麼呢?
系統時間:2024-05-18 6:45:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!