[理工] [計概]--程式設計

看板Grad-ProbAsk作者 (Mu)時間14年前 (2010/02/27 20:18), 編輯推噓0(0010)
留言10則, 3人參與, 最新討論串1/1
求出以下 C code print? char a[][10]={"abcde","fghijk"}; //a[0]=abcde a[1]=fghijk char *b = a[1]; //b指向a[1] char *c = "pqrstuv"; //c指向一字串??? c = b; //c重新指向b所指向的也就是a[1] c[3] = 'm'; //a[1]的第三個字元h改為m printf("%s\n",a[0]+1); //a[0]+1 看不懂 冏 printf("%s\n",a[1]); //印出 "fgmhijk" 註解為我的想法 請大家更正我的觀念 這方面的概念不是很清楚 Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.17.132.161

02/27 20:26, , 1F
c[3]..是改第4個字元i
02/27 20:26, 1F

02/27 20:28, , 2F
1. c[3] 是第四個字元改成m 2. a[0]+1 那行是由a[0]的第二個
02/27 20:28, 2F

02/27 20:28, , 3F
字元開始印出
02/27 20:28, 3F

02/27 20:29, , 4F
a[0]是指向'a' a[0]+1 指向'b'所以印出bcde
02/27 20:29, 4F

02/27 20:31, , 5F
喔喔 對 我忘記陣列是從0開始
02/27 20:31, 5F

02/27 20:31, , 6F
那請問第三行的意義是甚麼 指標可以指定字串?
02/27 20:31, 6F

02/27 20:36, , 7F
字串本身就是字元的指標,a[6] = "abcde" 可以簡單看作 *a =
02/27 20:36, 7F

02/27 20:37, , 8F
"abcde",同理「二維」字串可看成 **str
02/27 20:37, 8F

02/27 20:37, , 9F
恩 就是指向那一串..
02/27 20:37, 9F

02/27 20:38, , 10F
寫法、長度宣告上的差別
02/27 20:38, 10F
文章代碼(AID): #1BYGsKsP (Grad-ProbAsk)