作者查詢 / LPH66

總覽項目: 發文 | 留言 | 暱稱
作者 LPH66 在 PTT [ C_and_CPP ] 看板的留言(推文), 共6704則
限定看板:C_and_CPP
看板排序:
全部Math8896C_and_CPP6704Minecraft2016puzzle1798Little-Games1256PHP992Web_Design736killercorp717java657SYSOP599Programming587Mathematica451Windows394IME389Prob_Solve389Ajax321RegExp298b94902xxx229PttBug229HOT_Game210Visual_Basic207Inference204Hunter198Steam168NTU-K9167KS94-317160EzHotKey138BoardGame131Conan122HarryPotter120CSSE116Flash104Database96GameDesign94AndroidDev91Android90Kindaichi_Q88Wikipedia74LaTeX71BBSmovie59SMSlife57DeathNote54riddle52Weyslii49wretch42IMO_Taiwan38Suckcomic38b96902HW37NTU37b94902HW35Doraemon30NTU-MAGIC26NTUDormM723NTUcourse21ONE_PIECE19b95902xxx18KSHS_Talk18b95902HW15NTNU_Lin_9615PLT15C_Chat14CSCouncil11PttCurrent11transgender9Translate-CS9VR9NTUDormG18Education7HSNU_10857KS93-3207NCKU-BEH957NDMC-D627PttNewhand7b99902HW6hikarugo6NtuDormM16youtuber6b96902xxx5b97902HW5CompilerDev5GO5L_LifeInfo5MJ5NSwitch5SummerCourse5tutor5Hsinchu4Liu4PushDoll4AppsForBBS3b98902HW3CSIE_WSLAB3Gossiping3Kao-KSHS3KS93-3163NARUTO3NTUST-DT93-23RSSH94_3013b97902xxx2ck50th3232ck55th3252ck58th3122CS_Badminton2CSIE_Mahjong2NANLIN3012NDHU-His962NTUDormFJr2NTUGIEE_EDA2PCman2PCSH91_3052PttSuggest2PttWeb2SFFamily2WinMine2Abin1AGO1Aquarius1Army-Sir1ASHS-93-li1AskaYang1B92310XXX1b99902xxx1blind_pc1Browsers1CCSH_92_3161CGU-MED-991CGU_EE981ck55th1201ck55th3241ck56th3181CK84Courage1CLHS-53-131CM38th071consumer1CPU_AM7011CPU_FC7311CSMU-MED941CTSH913021CTSH923051DaZhi6thH3021Eclipse1FJU-AM-901FJU-BA92C1FJU_GF1FSHS-94-3181Google1Grad-ProbAsk1Greenfield1HKday1Hoobastank1HORTUS-911HSNU_10731HSNU_9291HSNU_9381HSNU_9581HSNU_9851HSNU_9891HSNU_9901Hu_Yen_20041HY-40-Xin1ILSH-943131INSECT-901Itchie1Jay1JH30th3061Jinmen1joke1kekkai1KhalilFong1KS90-3091KS94-3151KS94-3211KS98-3021lab6211LD_IM93-21Linux1MATLAB1MDscience6th1Moto_GP1MuscleBeach1NCCU00_Stat1NCCU02_PSYCH1NCCU03_ETHNO1NCCU03_PF1NCCU04_MAT1NCCU04_Stat1NCCU98_RMI1NCCU99_Stat1NCHU-AGR001NCHU-AGR071NCKU-PH981NCUFingrad031Network1NIUECE911NTNU_bridge1NTOU-YP1NTPU-JLAW941NTPU_CK_CM1NTU-GIIB20021NTU-GIIB20041NTU95thLIS1NTUBIME-1021NTUCH-941NTUDormM61NTUE-Art961NTUE-CS1031NTUE_Nse961NTUE_Nse981NTUHistory881NTUHorti961NTUKGA1NTUMath911NTUMath941NTUMT-921NTUMystery1NTUNewPlace1NTUST-DT92-11NTUT_EE490A1NUTN_SSSS1Oguri_Shun1Old-Games1onlychild1Peitou29t3161Penny1PERCUSSION1PokeMon1PttHistory1Romances1RSSH93_3071SCU_ACCM971SM02th031SM05th3xx1SOFTSTAR1SSSH-13th3111STDM-87-3051Stephen1streetsinger1TFGCRC1THU-P-Softbo1TigerBlue1TMU9711Translation1TSH97_YK1Ur-hsing1VET_921w-inds1wegoJT3021WuLing46-3051WuLing46-3171YP91-3121YP92-3011YP92-3031YP94-3141<< 收起看板(253)
[問題] if判定小小疑問
[ C_and_CPP ]23 留言, 推噓總分: +8
作者: groot3 - 發表於 2017/03/04 12:45(9年前)
10FLPH66: NULL 其實是個很有趣的東西03/04 18:10
11FLPH66: 版上的 C 語言常見誤解對此有詳細說明, 可以去看看03/04 18:10
12FLPH66: 簡單說就是 NULL 和 0 之間的關係沒有你想的那麼單純03/04 18:12
13FLPH66: 然後 C++ 還有 nullptr, 這個也請看版上講空指標常數那一篇03/04 18:14
15FLPH66: 剛才找了一下跟 if 相關的東西, 我的印象沒錯03/05 04:00
16FLPH66: C 的 if() 裡面是當做數值, 概念上等同於多寫一個 != 003/05 04:01
17FLPH66: 這也是因為 C 語言沒有單獨的布林值, 所有判斷式都是 int03/05 04:01
18FLPH66: 判斷條件成立則結果為整數 1, 不成立則為整數 003/05 04:02
19FLPH66: 但 C++ 由於有獨立的 bool 型態, if() 裡面是轉成 bool03/05 04:03
20FLPH66: 再看它究竟是 true 還是 false 決定03/05 04:03
21FLPH66: 所以 if(s) 在 C 約等同於 if(s!=0)03/05 04:04
22FLPH66: 但在 C++ 是約等同於 if((bool)s)03/05 04:04
[問題] Pointer alignment 問題
[ C_and_CPP ]47 留言, 推噓總分: +10
作者: Ninja5566 - 發表於 2017/03/02 21:16(9年前)
17FLPH66: placement new 只是把"要空間"跟"初始化"兩件事分開而已03/03 00:03
18FLPH66: alignment 是"要空間"部份旳問題, 跟初始化無關03/03 00:03
19FLPH66: 然後事實上 pA->Init() 跟 placement new 其實有 87% 像03/03 00:04
20FLPH66: 最後, 問於一樓的問題, 如果 class 是 standard layout03/03 00:06
21FLPH66: 那各元素的位置是確定的, 這時可以做一些手腳去達到對齊03/03 00:07
22FLPH66: 不是 standard layout 基本上就不行了03/03 00:07
24FLPH66: 倒過來, POD 是 standard layout 的一種03/03 00:11
25FLPH66: 但 standard layout 可以包含一些有限度的繼承03/03 00:12
29FLPH66: 喔, 那裡框框中那三行是 and 的關係, 不是 or 的03/03 00:20
30FLPH66: placement new 是對任何 C++ 物件型態都能進行的操作03/03 00:29
31FLPH66: 它就只是把你給的指標當做物件未來的所在地進行初始化而已03/03 00:30
33FLPH66: 所以我才會說這跟你的 pA->Init() 有 87% 像03/03 00:32
34FLPH66: standard layout 最大的好處是成員位置固定03/03 00:33
35FLPH66: 因此可以拿來當做一些二進位資料交換的用途03/03 00:33
36FLPH66: 那也因為位置固定, 所以只要知道想要對齊的成員是怎麼排的03/03 00:34
38FLPH66: 就能調整開始位置使得其成員處在對齊的位置上03/03 00:34
39FLPH66: serialization 是另一回事了, 這裡指的是整包寫出去那種03/03 00:35
40FLPH66: 例如二進位檔案格式那樣03/03 00:35
42FLPH66: 對, 這也是為什麼 offsetof() 可以用在 standard layout 上03/03 00:56
43FLPH66: (或者該說「只能用在 standard layout 上」)03/03 00:57
[問題] Void與副程式
[ C_and_CPP ]11 留言, 推噓總分: +5
作者: st880517 - 發表於 2017/03/02 20:23(9年前)
4FLPH66: 其實不用移, 直接補宣告就夠了03/02 22:42
[問題] 陣列 Runtime error
[ C_and_CPP ]38 留言, 推噓總分: +8
作者: TFman - 發表於 2017/03/01 13:32(9年前)
19FLPH66: >stupid0319 a[10] 不能用, a+10 倒是可以拿來比對03/02 00:24
20FLPH66: 然後 &a[10] == &(*(a+10)) == a+10 所以也沒問題03/02 00:24
21FLPH66: 這個是所謂 pointer to one-past-end, 可比對不可存取03/02 00:25
26FLPH66: 對 a[10] 存取是未定義行為, 但比對指標是否為 a+10 合法03/02 10:04
27FLPH66: 也就是這是 OK 的: for(char *p = a; p != a+10; p++) {}03/02 10:05
28FLPH66: 在這樣的迴圈裡面的 p 只會指向 a[0]~a[9]03/02 10:06
29FLPH66: 所以對其存取通通沒事03/02 10:06
30FLPH66: 然後因為上面那行等式, a+10 可以改寫成 &a[10] 也是對的03/02 10:07
31FLPH66: 也就是 a[10] 這樣的型式只在前面有取址時是合法的03/02 10:08
32FLPH66: 沒有取址的話它不是存就是取都是非法的03/02 10:08
[問題] fprintf 資料覆蓋
[ C_and_CPP ]10 留言, 推噓總分: +4
作者: cliffchang2 - 發表於 2017/02/28 16:55(9年前)
2FLPH66: \r 是螢幕專用, 寫檔的話這些控制字元沒有用02/28 17:08
3FLPH66: 最直覺的方式是 rewind(fout) 之後再寫入02/28 17:10
4FLPH66: 不過要小心後來的資料太短沒有全部蓋掉的話會有殘餘留下02/28 17:10
5FLPH66: 不過你已經有 \n 了那就是第一個換行之後的東西都別管就好02/28 17:11
6FLPH66: 真的要全蓋掉的話可以考慮例如每次都多輸出固定數量的空白02/28 17:11
7FLPH66: 1234.5 1234.5 跟 0.6 0.7 字元數就不一樣02/28 17:20
9FLPH66: 可以啊, 不過既然要蓋掉舊資料那 rewind 稍微簡潔一點03/02 14:26
10FLPH66: 你也可以直接寫 fseek(fout, 0, SEEK_SET); 意思是一樣的03/02 14:27
[問題] 遇到超級長的資料要怎麼處理???
[ C_and_CPP ]13 留言, 推噓總分: +7
作者: yhn0tgb60 - 發表於 2017/02/27 07:12(9年前)
11FLPH66: 高斯消去法一般不能直接寫成程式, 會有數值穩定度問題02/27 13:36
12FLPH66: 一個小例子可見 #1EnRlkgw (Prob_Solve)02/27 13:36
[問題] const array 放function內會拖慢執行速度
[ C_and_CPP ]37 留言, 推噓總分: +11
作者: ofd168 - 發表於 2017/02/23 14:26(9年前)
27FLPH66: 那個微軟 bug tracker 裡回文的 Geoff 的論點簡直奇文共賞02/27 06:33
28FLPH66: compiler 也是程式, 做錯事就得修, 哪有一定要繞過的道理..02/27 06:35
29FLPH66: 移掉三個 const 可以省掉 900K 程式各種意味上都是神奇02/27 06:36
[問題] const 位於 函式前 與 參數後 的意思
[ C_and_CPP ]4 留言, 推噓總分: +1
作者: hunandy14 - 發表於 2017/02/23 00:48(9年前)
1FLPH66: 所以你已經懂了你上篇問的「函式後 const」的意思了嗎?02/23 01:36
2FLPH66: 函式前的話, 那東西是回傳值, 所以就跟回傳值有關02/23 01:37
[問題] 重載下標符號 const 用途
[ C_and_CPP ]10 留言, 推噓總分: 0
作者: hunandy14 - 發表於 2017/02/20 18:03(9年前)
8FLPH66: 如果有沒有 const 沒差的話寫 const 版就足夠了02/21 00:44
9FLPH66: 有差的話用個 const_cast 把一種轉成另一種即可02/21 00:44
10FLPH66: (即是四樓程式碼的做法)02/21 00:45
Re: [問題] 關於結構內的指標
[ C_and_CPP ]44 留言, 推噓總分: +26
作者: LPH66 - 發表於 2017/02/09 07:26(9年前)
35FLPH66: 簡單回應上面, 狀況一較接近 ILP64 ABI02/12 23:49
36FLPH66: 但大家口中的 "64-bit" 多是 LP64 ABI,02/12 23:50
37FLPH66: 所以會有 int 大小不同的狀況02/12 23:50
38FLPH66: LP64 裡一般來說狀況三比較多, 但就如上面所說02/12 23:51
39FLPH66: 在指定 pack struct 時會變成狀況二02/12 23:51