作者查詢 / AstralBrain

總覽項目: 發文 | 留言 | 暱稱
作者 AstralBrain 在 PTT 全部看板的留言(推文), 共441則
限定看板:全部
Re: [問題] 2D array的address
[ C_and_CPP ]9 留言, 推噓總分: +4
作者: zzss2003 - 發表於 2018/04/24 10:45(7年前)
3FAstralBrain: B不是address啊 他就是那個array04/24 13:36
7FAstralBrain: 看你要不要分清楚 "是指標" 和 "可以轉型成指標"04/25 22:29
8FAstralBrain: 這兩件事, 當然如果你覺得當成一樣的比較好理解也是04/25 22:30
9FAstralBrain: 可以04/25 22:30
[問題] function用char**當參數
[ C_and_CPP ]18 留言, 推噓總分: +6
作者: wong0101 - 發表於 2018/04/21 15:57(7年前)
7FAstralBrain: 1)不會 2)會,QByteArray在toLocal8Bit()那行結束的時04/21 17:41
8FAstralBrain: 候就destruct掉了04/21 17:41
11FAstralBrain: toLocal8Bit()會生一個暫時物件(QByteArray)出來04/21 18:02
12FAstralBrain: 沒搞錯的話這邊會copy一份 然後馬上被destruct04/21 18:03
13FAstralBrain: messages指到的是一塊被free掉的memory04/21 18:03
15FAstralBrain: 啊 正確來說不是copy, 是encode04/21 18:08
17FAstralBrain: 總之不會跟QString共用空間04/21 18:09
[問題] 簡單的Thread程式卻無法編譯
[ C_and_CPP ]27 留言, 推噓總分: +6
作者: kafy - 發表於 2018/03/16 02:01(8年前)
22FAstralBrain: -lpthread (x) -pthread (o)03/17 12:06
[問題] 關於 control flow 的改寫
[ C_and_CPP ]22 留言, 推噓總分: +13
作者: Hazukashiine - 發表於 2018/01/29 17:49(8年前)
3FAstralBrain: 不call c()的話a()和b()就不會變嗎01/29 18:11
4FAstralBrain: while (!a()) { if (b()) c(); } ? 我想的是這樣01/29 18:13
5FAstralBrain: 先確認一下01/29 18:30
6FAstralBrain: a=true => break, (a,b)=(false,true) => call c01/29 18:31
7FAstralBrain: (a,b)=(false,false) => loop 這會卡死?01/29 18:31
8FAstralBrain: 我有理解錯嗎01/29 18:31
12FAstralBrain: 看起來b()根本可以假設永遠是true01/29 18:49
13FAstralBrain: 一變false就再也沒機會call到c了 不要看它比較好 XD01/29 18:50
14FAstralBrain: while(!a()){c();remain...} 就可以01/29 18:53
15FAstralBrain: 如果b有side-effect再隨便找個地方放01/29 18:54
[噥噥] 悠哉喵Pass的司機 是不是在抗議超時工作已回收
[ C_Chat ]20 留言, 推噓總分: +16
作者: MiharuHubby - 發表於 2017/12/28 15:06(8年前)
12FAstralBrain: 樓上正解 XD 看起來下午真的是兩小時一班車12/28 15:33
[問題] function prototype scope
[ C_and_CPP ]20 留言, 推噓總分: +5
作者: zzss2003 - 發表於 2017/12/08 11:55(8年前)
8FAstralBrain: 書上寫的ignores the name是個不夠精確的說法12/08 13:25
9FAstralBrain: 實際上在它的scope裡面都有效,而且有時候真的會用到12/08 13:27
10FAstralBrain: 例如說 auto add(T a, T b) -> decltype(a + b);12/08 13:28
11FAstralBrain: compiler不會忽略a, b這兩個變數名12/08 13:31
12FAstralBrain: 是說你可以不寫, 但是只要寫了compiler就會去看12/08 13:32
13FAstralBrain: declarator 是定義在 c++ grammar 裡面的一個東西12/08 13:35
14FAstralBrain: 簡單來說, int x = 0, y[100]; void foo(int z);12/08 13:36
15FAstralBrain: 裡面的 x y[100] foo(int z) 叫做 declarator12/08 13:37
17FAstralBrain: 啊, 因為 stackoverflow 那串讓我以為你在問 c++12/08 16:24
18FAstralBrain: 忽略那行吧 XD12/08 16:24
[問題] printf 格式不同問題(修正)
[ C_and_CPP ]51 留言, 推噓總分: +12
作者: hpyhacking - 發表於 2017/10/27 02:29(8年前)
31FAstralBrain: 以 amd64 來說, 浮點數 w 會進 xmm0 register10/27 21:30
32FAstralBrain: 然後 printf 從沒使用的 rdi 讀一個整數, 所以是什麼10/27 21:31
33FAstralBrain: 值都有可能10/27 21:31
35FAstralBrain: 啊對... 忘了有 format string10/29 06:08
[問題] constant的定義
[ C_and_CPP ]20 留言, 推噓總分: +4
作者: zzss2003 - 發表於 2017/10/26 15:05(8年前)
7FAstralBrain: 看你在看什麼語言的spec, 一般人認為的constant可能10/26 18:34
8FAstralBrain: 會跟spec定義的不太一樣10/26 18:34
9FAstralBrain: 例如說在c spec裡面, const int a = 3;的 a 不是10/26 18:35
10FAstralBrain: constant10/26 18:35
11FAstralBrain: 寫 enum {X = a}, compiler會對這個a有意見10/26 18:38
12FAstralBrain: 但是在一般人的定義裡面a是個constant10/26 18:39
[問題] 怎麼用 Python 寫出 switch 的功能?
[ Python ]39 留言, 推噓總分: +7
作者: henry8168 - 發表於 2017/10/19 14:28(8年前)
5FAstralBrain: 看起來你需要的是with statement10/19 17:28
22FAstralBrain: 正常來說,return 0出去外面還是要有人call release()10/20 00:06
23FAstralBrain: python style就會變成stucode寫的main()那樣10/20 00:07
24FAstralBrain: 外面用完回到context manager做release10/20 00:08
25FAstralBrain: 所以這樣就ok了10/20 00:08
35FAstralBrain: with 也可以不用那麼多層啊10/20 13:24
36FAstralBrain: with init1(), init2(), init3(): do_something()10/20 13:25
37FAstralBrain: 當然如果每個init中間都還要做點其他事就沒辦法了10/20 13:25
[閒聊] 為什麼 C 語言不提供指向虛無的指標
[ C_and_CPP ]97 留言, 推噓總分: +24
作者: Hazukashiine - 發表於 2017/10/10 13:28(8年前)
5FAstralBrain: 那你希望int x = *VACANT; 的x的值是多少10/10 13:45
6FAstralBrain: 未初始化的垃圾值? 這樣跑到後面會出現更多問題10/10 13:45
7FAstralBrain: 還不如在一開始直接死10/10 13:45
8FAstralBrain: 如果等號左邊是複雜的c++ class那更無解了10/10 13:47
9FAstralBrain: 所以其實你要的不是VACANT, 而是對void做各種運算..?10/10 13:53
10FAstralBrain: 那 int *ptr = (int*)VACANT; 會發生什麼事10/10 13:55
11FAstralBrain: 其實我想問的是你允不允許VACANT轉型成其他指標 XD10/10 14:06
12FAstralBrain: 如果允許的話就回到我一開始的問題10/10 14:06
13FAstralBrain: *(int*)VACANT 要segfault還是要NOP10/10 14:07
14FAstralBrain: segfault => 跟null有87%像, nop => 跑到後面更慘10/10 14:08
15FAstralBrain: 實作好處理 問題是要怎麼限制vacant只能write-only10/10 14:23
16FAstralBrain: 現在你要的功能應該可以用c++自己做一個出來10/10 14:25
17FAstralBrain: 在smart pointer外面再包一層之類的10/10 14:26
18FAstralBrain: 可以先自己試用看看 XD10/10 14:26
45FAstralBrain: 仔細一想反正你只是要一塊write-only的垃圾位址10/10 22:22
46FAstralBrain: 那 void* vacant = new char[4096]; 就好啦 XD10/10 22:22
47FAstralBrain: 是不是真的nop也不是很重要10/10 22:25