作者查詢 / 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)
[問題] 關於C++ virtual function Runtime的考題
[ C_and_CPP ]44 留言, 推噓總分: +11
作者: fsvy - 發表於 2017/08/17 23:26(8年前)
18FLPH66: 關鍵字: "多型" 有書的話去找這個地方仔細讀08/18 18:05
Re: [問題] 請問關於 Rust 跟 C 的速度比較
[ C_and_CPP ]16 留言, 推噓總分: +6
作者: littleshan - 發表於 2017/08/14 01:32(8年前)
2FLPH66: 可能是; C++ 有 template 所以可以 inline 比較函式08/14 07:49
3FLPH66: 但 qsort 一定是(間接)呼叫08/14 07:49
4FLPH66: 我沒實測過所以這只是推測就是了08/14 07:50
11FLPH66: 喔對, 忘了它是 intro sort...08/15 00:01
[問題] 請問關於 Rust 跟 C 的速度比較
[ C_and_CPP ]54 留言, 推噓總分: +12
作者: os653 - 發表於 2017/08/12 21:49(8年前)
46FLPH66: 不過 restrict 只有 C99 有, C++ 因為多型的關係狀況複雜08/14 01:48
47FLPH66: restrict 的語意碰上多型會有麻煩所以目前一直都沒有規定08/14 01:48
48FLPH66: (連 restrict 在 C++ 都不是關鍵字)08/14 01:49
49FLPH66: 雖然 g++ 有提供 __restrict 給 C++ 用但我不太清楚語意08/14 01:50
50FLPH66: 修正一下, 是 C99 以後的 C 才有08/14 01:52
[問題] 不同compiler對bit field的處理方式不同?
[ C_and_CPP ]4 留言, 推噓總分: +1
作者: zzss2003 - 發表於 2017/07/20 11:47(8年前)
4FLPH66: 他就是在問那個 bit 欄位的底層分配...07/21 06:44
Re: [問題] C unsigned long的問題
[ C_and_CPP ]13 留言, 推噓總分: +2
作者: descent - 發表於 2017/07/18 21:36(8年前)
5FLPH66: 一般來說沒附字尾的整數是 int, 除非 int 裝不下07/19 08:22
6FLPH66: 裝不下的時候會有一定的程序往上試型態, 試到裝下了就用07/19 08:22
7FLPH66: 這是為什麼 0x80000000 是 unsigned int 的原因07/19 08:22
8FLPH66: 1<<31 則是 1 和 31 這兩個常數進行運算07/19 08:23
9FLPH66: bitshift 看左邊, 1 是 int 所以結果就是 int07/19 08:23
10FLPH66: 這就是為什麼一般對 bitmask 的值會寫成 1U<<31 的原因07/19 08:24
11FLPH66: 加個 U 就是說這個 1 是 unsigned int07/19 08:24
12FLPH66: 順帶一提的是, C/C++ 沒有負 literal, 所有看起來是負數的07/19 08:25
13FLPH66: 常數都是正常數加負號, 所以某些負值會產生很意外的結果07/19 08:26
[問題] C unsigned long的問題
[ C_and_CPP ]5 留言, 推噓總分: +2
作者: final01 - 發表於 2017/07/17 22:35(8年前)
2FLPH66: 因為你單寫 1 的型態是 int, 寫 1UL 才是 unsigned long07/18 00:04
3FLPH66: 0x80000000 則比較有趣, int 裝不下, 它變成 unsigned int07/18 00:06
Re: [問題] 確保#define的值在編譯時正確
[ C_and_CPP ]4 留言, 推噓總分: +1
作者: loveflames - 發表於 2017/07/11 16:16(8年前)
3FLPH66: 他就是要 Result0 編譯錯誤...不過倒是可以 #else #error07/12 04:31
[問題] 一段 arguement 問題
[ C_and_CPP ]23 留言, 推噓總分: +7
作者: gecer - 發表於 2017/07/02 13:11(8年前)
7FLPH66: 樓上正好在這裡不對, 因為 execlp 是可變參數07/02 18:32
8FLPH66: 第三參數之後是被 ... 抓起來的, 所以放 NULL 會變成數字 007/02 18:33
9FLPH66: 必須要真的傳進一個指標才行, 所以才需要 (char*) 轉型07/02 18:33
10FLPH66: https://linux.die.net/man/3/execlp07/02 18:34
11FLPH66: > since these are variadic functions, this pointer must07/02 18:34
12FLPH66: > be cast (char *) NULL.07/02 18:34
13FLPH66: 所以理論上單傳 nullptr 也是錯的, 也需要轉型07/02 18:35
14FLPH66: (因為 nullptr 的型態是 std::nullptr_t)07/02 18:36
[問題] VC++ 字元集"Unicode"下使用MySQL
[ C_and_CPP ]62 留言, 推噓總分: +12
作者: chingyue - 發表於 2017/06/16 18:05(8年前)
8FLPH66: 這裡其實不是 TCHAR/wchar_t/char 的問題06/18 06:33
9FLPH66: 而是 MySQL API 只收 const char * 的關係06/18 06:33
10FLPH66: 雖然我沒用過, 但根據我在 PHP 的經驗, 這個 const char *06/18 06:33
11FLPH66: 字串的編碼應該是先前 set names 所設定的編碼06/18 06:35
12FLPH66: 那麼當原 PO 手上有的是 wchar_t 時, 就必須要先轉碼成06/18 06:35
13FLPH66: 對應編碼的 const char * 字串再送進去06/18 06:35
14FLPH66: 如果是 set names utf8; 的話, 用上面推文講的 windows API06/18 06:36
15FLPH66: WideCharToMultiByte() 函數就可以轉了, 詳情可查 MSDN06/18 06:37
16FLPH66: 這裡反而當使用 TCHAR 會搞亂, 因為如果 TCHAR 是 char 時06/18 06:37
17FLPH66: 要先把這個 char* 字串轉成 wchar_t* 的 Unicode 字串06/18 06:39
18FLPH66: (使用的是上面那個函式的反向版 MultiByteToWideChar() )06/18 06:39
19FLPH66: 再轉成 UTF-8 字串才能送進去06/18 06:40
20FLPH66: 比 TCHAR 是 wchar_t 時多了一個步驟06/18 06:40
21FLPH66: 如果原 PO 沒有想要維護兩個版本的程式那建議不要 TCHAR06/18 06:41
22FLPH66: 而就直接使用 wchar_t 就行了06/18 06:41
32FLPH66: ...要不要來做個實驗? 就印個 "一" 字就好06/18 21:03
33FLPH66: ......等等我看到了你的但書: 只限 ASCII Code = =06/19 10:04
34FLPH66: 不過就算這樣還是不行的...除非你的 char buffer 別有用途06/19 10:05
35FLPH66: 再不然就是你以為是 _UNICODE 其實是 _MBCS06/19 10:07
36FLPH66: 所以 TCHAR 還是 char, 那自然可以 sprintf 到 char06/19 10:07
37FLPH66: 這似乎也能解釋為什麼你會有只限 ASCII 的但書在06/19 10:08
45FLPH66: 不好意思, TCHAR 是 Visual Studio 獨有的東西06/19 14:38
46FLPH66: 就是為了一支程式能藉給定 _UNICODE 或 _MBCS 編出不同版本06/19 14:39
47FLPH66: 所以不會有 printf 的 %? 語法, 只會有 _stprintf 的 %s06/19 14:40
48FLPH66: 用 printf 印一個 TCHAR 一定是搞錯了什麼06/19 14:40
49FLPH66: 然後, sql 敘述並不只會有拉丁字母, 指定欄位名和給值時06/19 14:48
50FLPH66: 都會需要給定實際字串內容, 這正是 MYSQL_SET_CHARSET_NAME06/19 14:48
51FLPH66: 的用途; 我不相信一個有一定規模的資料庫會沒有字串資料06/19 14:49
52FLPH66: 甚至在開一個表格時對字串欄位都需要給定編碼了06/19 14:50
53FLPH66: 雖然我只能猜測, 但它 API 設計只吃 char* 的理由06/19 14:50
54FLPH66: 很有可能就是為了相容各種編碼, 因此只能以最原始的 char*06/19 14:50
55FLPH66: 進行傳送, 再使用所設定的編碼進行解釋 / 填入資料庫06/19 14:51
56FLPH66: 那為了要給定正確的編碼給這些欄位, 這樣子的轉碼是必須的06/19 14:51
57FLPH66: _s 的函數需要傳入目標空間的最大大小, 位置在空間後面06/20 23:14
58FLPH66: 所以你需要 swprintf_s(szDir, MAX_PATH, L"%s%s*", ...)06/20 23:15
59FLPH66: 關於 wcstombs, 它需要配合 C 語言的 locale 介面來使用06/20 23:30
60FLPH66: 問題是 setlocale 的設定方式是跟系統相關的06/20 23:30
61FLPH66: 那這樣倒不如直接使用所在系統的 API 來做轉換06/20 23:31
62FLPH66: 以你的狀況就是 Windows API06/20 23:31
Re: [問題] api是什麼?
[ C_and_CPP ]14 留言, 推噓總分: +2
作者: AWEN221 - 發表於 2017/06/09 09:49(8年前)
6FLPH66: 你這篇文章的問題在講了很多什麼是 API, 但沒講 API 是什麼06/09 12:48
7FLPH66: 而這偏偏正是原 PO 最想問的事情06/09 12:49