作者查詢 / LPH66
作者 LPH66 在 PTT [ C_and_CPP ] 看板的留言(推文), 共6694則
限定看板:C_and_CPP
看板排序:
全部Math8895C_and_CPP6694Minecraft2013puzzle1798Little-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-21MATLAB1MDscience6th1Moto_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<< 收起看板(252)
4F推: 其實不用移, 直接補宣告就夠了03/02 22:42
19F推: >stupid0319 a[10] 不能用, a+10 倒是可以拿來比對03/02 00:24
20F→: 然後 &a[10] == &(*(a+10)) == a+10 所以也沒問題03/02 00:24
21F→: 這個是所謂 pointer to one-past-end, 可比對不可存取03/02 00:25
26F推: 對 a[10] 存取是未定義行為, 但比對指標是否為 a+10 合法03/02 10:04
27F→: 也就是這是 OK 的: for(char *p = a; p != a+10; p++) {}03/02 10:05
28F→: 在這樣的迴圈裡面的 p 只會指向 a[0]~a[9]03/02 10:06
29F→: 所以對其存取通通沒事03/02 10:06
30F→: 然後因為上面那行等式, a+10 可以改寫成 &a[10] 也是對的03/02 10:07
31F→: 也就是 a[10] 這樣的型式只在前面有取址時是合法的03/02 10:08
32F→: 沒有取址的話它不是存就是取都是非法的03/02 10:08
2F推: \r 是螢幕專用, 寫檔的話這些控制字元沒有用02/28 17:08
3F→: 最直覺的方式是 rewind(fout) 之後再寫入02/28 17:10
4F→: 不過要小心後來的資料太短沒有全部蓋掉的話會有殘餘留下02/28 17:10
5F→: 不過你已經有 \n 了那就是第一個換行之後的東西都別管就好02/28 17:11
6F→: 真的要全蓋掉的話可以考慮例如每次都多輸出固定數量的空白02/28 17:11
7F推: 1234.5 1234.5 跟 0.6 0.7 字元數就不一樣02/28 17:20
9F推: 可以啊, 不過既然要蓋掉舊資料那 rewind 稍微簡潔一點03/02 14:26
10F→: 你也可以直接寫 fseek(fout, 0, SEEK_SET); 意思是一樣的03/02 14:27
11F推: 高斯消去法一般不能直接寫成程式, 會有數值穩定度問題02/27 13:36
12F→: 一個小例子可見 #1EnRlkgw (Prob_Solve)02/27 13:36
27F推: 那個微軟 bug tracker 裡回文的 Geoff 的論點簡直奇文共賞02/27 06:33
28F→: compiler 也是程式, 做錯事就得修, 哪有一定要繞過的道理..02/27 06:35
29F→: 移掉三個 const 可以省掉 900K 程式各種意味上都是神奇02/27 06:36
1F推: 所以你已經懂了你上篇問的「函式後 const」的意思了嗎?02/23 01:36
2F→: 函式前的話, 那東西是回傳值, 所以就跟回傳值有關02/23 01:37
8F→: 如果有沒有 const 沒差的話寫 const 版就足夠了02/21 00:44
9F→: 有差的話用個 const_cast 把一種轉成另一種即可02/21 00:44
10F→: (即是四樓程式碼的做法)02/21 00:45
35F→: 簡單回應上面, 狀況一較接近 ILP64 ABI02/12 23:49
36F→: 但大家口中的 "64-bit" 多是 LP64 ABI,02/12 23:50
37F→: 所以會有 int 大小不同的狀況02/12 23:50
38F→: LP64 裡一般來說狀況三比較多, 但就如上面所說02/12 23:51
39F→: 在指定 pack struct 時會變成狀況二02/12 23:51
6F推: 原 PO 你應該去找你的程式的標頭檔找 U16_T 的定義02/09 03:08
7F→: 如果是寫 uint16_t (小寫) 那個是標準定義, 但大寫的不是02/09 03:09
8F→: 會這樣寫的程式大多是在 C++11 引入 uint16_t 這種東西之前02/09 03:10
9F→: 為了(1)語義(2)平台需求等等而自行定義的02/09 03:10
10F→: 這種自行定義的型態實際上是什麼請去找標頭檔02/09 03:11
33F推: 稍微補充一點, 印象中原本 C 語言的 int 是有意要當做02/08 17:50
34F→: 該環境的 native size 使用的, 所以在 16→32 的時候才會有02/08 17:51
35F→: 舊的 int 16 bit 新的 int 32 bit 的分別02/08 17:51
36F→: 不過似乎是因為 32 的架構太普遍了, 所以 64 bit 的 ABI02/08 17:52
37F→: 就有分 LLP64, LP64, ILP64, SILP64 幾種02/08 17:52
38F→: 上面是在描述哪些資料型態是 64 bit 大小02/08 17:53
39F→: LLP64 只有 long long 是, LP64 下到 long, ILP64 下到 int02/08 17:53
40F→: SILP64 再下到 short, 其他沒提的就跟 32 bit ABI 一樣02/08 17:53
41F→: 裡面的 P 則是指標, 畢竟指標幾乎都是 native size02/08 17:54
42F→: 那在 LLP64/LP64 的 ABI 裡 int 就還是 32-bit 了02/08 17:55
43F→: 也就是 int 的大小已經跟 native size 沒什麼關連了02/08 17:56
49F→: 那邊討論的就是當 sizeof(int) == sizeo(int*)02/09 03:13
50F→: 且結構成員之間沒有 padding 時的行為02/09 03:13
51F→: 跟 nick5130 最一開始推文講的東西一模一樣02/09 03:13