[問題] 一天一問有益身心健康XDD<誤> fopen …

看板C_and_CPP作者 (fireslayer)時間15年前 (2010/03/16 20:24), 編輯推噓6(6039)
留言45則, 7人參與, 最新討論串1/1
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 恩...........我好像點錯了= = 不過小弟我有用fopen開啟新文字文件 Microsoft Visual Studio說用fopen_s比較健康 所以我就把原本的fopen("layout.txt","w"); 改成fopen_s("layout.txt","w");然後說debugger說我語法錯誤 請問他們兩個有什麼不一樣阿~~ 原本FILE*fp fp=fopen("layout.txt","w") 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.39.32

03/16 20:34, , 1F
03/16 20:34, 1F

03/16 20:47, , 2F
這個資料很舊了耶<2005>,不知道有沒有新的進展
03/16 20:47, 2F

03/16 21:07, , 3F
http://ppt.cc/9q!3 fopen_s是微軟自己搞出來的一套它
03/16 21:07, 3F

03/16 21:07, , 4F
們覺得比較安全的Lib, 包含一海票char string process
03/16 21:07, 4F

03/16 21:08, , 5F
的function都有_s的版本; 你傳的參數不合它的prototype
03/16 21:08, 5F

03/16 21:08, , 6F
自然被爆error; 另外我覺得它並不難Google....
03/16 21:08, 6F

03/16 21:09, , 7F
PS. 它可以指訂encoding在mode裡算是好處吧....XD
03/16 21:09, 7F

03/16 21:16, , 8F
原po最近很積極的問問題..不過有些真的可以google找到...
03/16 21:16, 8F

03/16 21:42, , 9F
看不太懂= =請問大大我的碼要怎麼改比較好
03/16 21:42, 9F
※ 編輯: fireslayer 來自: 122.117.39.32 (03/16 21:43)

03/16 21:44, , 10F
我想你可以看看這個 http://0rz.tw/o9g6a
03/16 21:44, 10F

03/16 21:45, , 11F

03/16 21:55, , 12F
所以是要直接fopen_s(&fp,"layout,txt","w")醬喔
03/16 21:55, 12F

03/16 21:55, , 13F
網路上的我不是沒查,只是他們都有寫什麼err的
03/16 21:55, 13F

03/16 21:56, , 14F
我看不太懂整個架構.....
03/16 21:56, 14F

03/16 22:00, , 15F
原來我推的網址V大已經給了,囧rz
03/16 22:00, 15F

03/16 22:01, , 16F
你看他parameter那裡的介紹,第一個就是要放你的pointer
03/16 22:01, 16F

03/16 22:02, , 17F
你說那個err是return的部分,errno就是error number的意
03/16 22:02, 17F

03/16 22:03, , 18F
思,用來給你判斷他有沒有成功用的
03/16 22:03, 18F

03/16 22:26, , 19F
個人是覺得, 應該自己好好閱讀它的說明, 再怎麼懶得看英
03/16 22:26, 19F

03/16 22:26, , 20F
文, 它的下面也有完整的example可以參考了; 如果這樣還
03/16 22:26, 20F

03/16 22:27, , 21F
不懂function怎麼用, 那應該把書本的函數相關章節再複習
03/16 22:27, 21F

03/16 22:27, , 22F
以下才好....@_@"
03/16 22:27, 22F

03/16 22:32, , 23F
我是用how to program C自學的,他直接講各個函式
03/16 22:32, 23F

03/16 22:32, , 24F
<還是我沒看到>......所以我有些不太懂...
03/16 22:32, 24F

03/16 22:36, , 25F
咦?? 你前幾篇的問題裡不是已經自己寫過函數了嗎??
03/16 22:36, 25F

03/16 22:37, , 26F
其實已前有沒有學過不是重點 重點是你要懂得去看文件
03/16 22:37, 26F

03/16 22:37, , 27F
使用函數的時候就要知道這個函數要傳入什麼, 會回傳什麼
03/16 22:37, 27F

03/16 22:37, , 28F
新的東西一值都有 人家都會寫好各個東西是在幹嗎要怎麼用
03/16 22:37, 28F

03/16 22:38, , 29F
你自己寫的函數, 呼叫它要match你的函數prototype;
03/16 22:38, 29F

03/16 22:38, , 30F
相對的你要用別人的函數(標準, 其他第三方Lib, 甚至將來
03/16 22:38, 30F

03/16 22:38, , 31F
不懂得就再查或上來問 培養這種學習的技能才是比較重要的
03/16 22:38, 31F

03/16 22:39, , 32F
和其他人co-work等), 就要搞清楚別人的函數怎麼用--即要
03/16 22:39, 32F

03/16 22:39, , 33F
傳入什麼, 會回傳什麼; 而這樣的資料就在各式manual和
03/16 22:39, 33F

03/16 22:39, , 34F
document裡, 這就是要練習去看去了解的:)
03/16 22:39, 34F

03/16 22:40, , 35F
啊~~不好意思和板大的推文multi-threading到....XDDD
03/16 22:40, 35F

03/16 22:41, , 36F
沒有產生 race condition 就好 XD
03/16 22:41, 36F

03/16 22:41, , 37F
我一直感覺我在蓋空中樓閣.....很多基本的東西不懂
03/16 22:41, 37F

03/16 22:41, , 38F
看來上大學以後要認真聽了XDD
03/16 22:41, 38F

03/16 22:49, , 39F
上大學更要會自己找資料, 因為要學的東西上課聽不完
03/16 22:49, 39F

03/16 23:01, , 40F
舊資料又不代表是錯的,在場誰的腦袋不是比 2005 年還舊?
03/16 23:01, 40F

03/16 23:03, , 41F
一個函式如果2005年以前就定義 那不可能2010年又改變吧
03/16 23:03, 41F

03/16 23:04, , 42F
他裡面是說還沒定義的樣子
03/16 23:04, 42F

03/16 23:05, , 43F
還是丟說不知道...反正他好像沒寫解決方法
03/16 23:05, 43F

03/16 23:07, , 44F
如果你真的不懂的話 那不要用 _s 系列的就好了
03/16 23:07, 44F

03/16 23:12, , 45F
已解決
03/16 23:12, 45F
文章代碼(AID): #1BdtXiLJ (C_and_CPP)