[問題] 指標相關問題

看板C_and_CPP作者 (安安你好幾歲住哪)時間11年前 (2014/07/21 22:59), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/2 (看更多)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) C 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 程式沒有辦法順利執行 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) #include <stdio.h> #include <stdlib.h> #include <string.h> void reverse(char *s) { int i, j; char c; for (i = 0, j = strlen(s) - 1; i < j; i++, j--) { c = s[i]; s[i] = s[j]; s[j] = c; } } int main(void) { char *s1 = "ABCDEFG"; reverse(s1); return 0; } 補充說明(Supplement): 這是小弟最近在練習指標時,在網路上找到的一個題目, 只要把char *s1 = "ABCDEFG"; 改成char s1[]= "ABCDEFG"; 就可以執行了, 不過想不到原因,麻煩各位高手們幫忙解決我的疑問,謝謝了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.149.91 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1405954787.A.636.html

07/21 23:09, , 1F
*s1 指到 'A' 的位置, 但長度未知
07/21 23:09, 1F

07/21 23:15, , 2F
置底十三誡之4.
07/21 23:15, 2F

07/21 23:39, , 3F
不好意思,我沒注意到置底文,謝謝了。
07/21 23:39, 3F

07/21 23:45, , 4F
眼殘看成副程式有複製的動作... ...
07/21 23:45, 4F
文章代碼(AID): #1JpIhZOs (C_and_CPP)
文章代碼(AID): #1JpIhZOs (C_and_CPP)