Re: [問題] atoi的問題
※ 引述《nomorejerry (m e l o)》之銘言:
: ( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
: ( 未必需要依照此格式,文章條理清楚即可 )
: 各位板友好
: 剛寫到關於atof...atoi...的函式
: 以atof()為例
: ----------------------------------------
: char* s; double x;
: s = "-1988.12E-25";
: x = atof(s);
在這裡 "-1988.12E-25" 是以「陣列」的形式被存放到程式的某處
, 有很多細節的部份需要搞清楚, 上面的程式碼等同於 :
char* s; double x;
const char (&charArray)[12] = "1988.12E-25";
const char *constPtr = &charArray[0];
s = const_cast<char *>( constPtr );
x = atof(s);
陣列參考那裡只是想讓你明白他的型態是什麼, 很多人都會把指標
跟陣列名稱搞混
: ----------------------------------------
: 1.想請問的是,在這裡的變數s是宣告成指向char型態的指標
: 為什麼 s 還可以給值呢?
: 2.我修改上述程式
: char* s; char s1;
: s1 = "-1988.12E-25";
: s = &s1;
: x = atof(s);
上面的程式碼等同於 :
char* s; char s1;
const char (&charArray)[12] = "1988.12E-25";
s1 = charArray;
// ...
我想到這裡錯誤應該很明顯, 我們沒辦法把一個char陣列assign到
char 變數去...
: 結果編譯時會有錯,他說不能從const char 轉成 char
這個錯誤訊息錯誤阿 > <
: 請板友解惑一下,謝謝
--
╭───╮ ╭╮ ╭╮ ☆
非常非常善良的你 │╭──╯ ☆ ││ ││ ☆
非常愛我的你 │╰──╮╭──╮│╰──╯│╭──╮╭──╮╭──╮
────────── ╰──╮││╭╮│╰─╮╭─╯│ ‧ ││╭╮││╭╮│
曾一瞬間展露笑容的你 ╭──╯││╰╯│ ││ │ ─╯│╰╯│││││
曾接受我心意的你 ╰───╯╰──╯ ☆ ╰╯ ╰──╯╰──╯╰╯╰╯
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.121.197.115
※ 編輯: loveme00835 來自: 140.121.197.115 (08/05 15:52)
→
08/05 16:01, , 1F
08/05 16:01, 1F
→
08/05 16:01, , 2F
08/05 16:01, 2F
→
08/05 16:11, , 3F
08/05 16:11, 3F
→
08/05 16:12, , 4F
08/05 16:12, 4F
推
08/05 16:23, , 5F
08/05 16:23, 5F
討論串 (同標題文章)