1 名前:デフォルトの名無しさん [2018/08/16(木) 23:36:02.22 ID:fOCSKLtw.net] C言語の話題のみ取り扱います C++の話題はC++スレへ 質問には最低限の情報(ソース/コンパイラ/OS)を付ける 数行で収まらないソースは以下を適当に使ってURLを晒す https://paiza.io/ https://ideone.com/ codepad.org/ C11 www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf C99 www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf kikakurui.com/x3/X3010-2003-01.html C FAQ 日本語訳 www.kouno.jp/home/c_faq/ JPCERT C コーディングスタンダード https://www.jpcert.or.jp/sc-rules/ 前 C言語なら俺に聞け 146 https://mevius.5ch.net/test/read.cgi/tech/1525031257/
830 名前:PIOXH.net mailto: 行数が多ければいいというものでもないと思うが・・・ [] [ここ壊れてます]
831 名前:デフォルトの名無しさん [2018/09/08(土) 00:16:36.09 ID:L3ZkEci+.net] だいぶ初歩の質問なんだけどextern宣言って本当に必須なの?コンパイラというかリンカによるのかもしれないけど、つけなくても同じ動作するよね? 今まで疑問に思わず書いてたけど、これを聞かれて色々試してみると実際つけなくても同様の動きしてるように見えるし、ちゃんと答えられなかったわ
832 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 00:16:57.63 ID:Bduckbke.net] >>816 ならお前なりの妥当な規模を測る単位でも示せよ
833 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 00:24:37.23 ID:cJyrgWby.net] >>816 否定ばかりして新しい提案をしない典型的無能要員
834 名前: mailto:sage [2018/09/08(土) 00:43:40.72 ID:t7GfMYxV.net] >>817 ライブラリ関数をコールするだけなら extern は要らない子です、でもライブラリが独自の変数を定義して公開しているのならば extern がないと困ります 例えば <stdio.h> の stdin, stdout, stderr
835 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 01:03:55.35 ID:Bduckbke.net] >>817 > 1. Declaration can be done any number of times but definition only once. > 2. “extern” keyword is used to extend the visibility of variables/functions(). > 3. Since functions are visible through out the program by default. The use of extern is not needed in function declaration/definition. Its use is redundant. > 4. When extern is used with a variable, it’s only declared not defined. > 5. As an exception, when an extern variable is declared with initialization, it is taken as definition of the variable as well. > https://www.geeksforgeeks.org/understanding-extern-keyword-in-c/ 下のコード例が見やすい。 これが規格と合致しているのかは知らん。
836 名前: mailto:sage [2018/09/08(土) 01:26:25.96 ID:t7GfMYxV.net] >>821 しかし C には仮定義 "tentative definition" があったりして混迷するのです ISO/IEC 9899:1999 6.9.2.2 the behavior is exactly as if the translation unit contains a file scope declaration of that identifier, with the composite type as of the end of the translation unit, with an initializer equal to 0. 私には、これはリンカの仕業であってコンパイラが自ら行動しているようには見えないのですが…
837 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 04:02:52.50 ID:5gcJr6RX.net] glibc は malloc だけで 5000行あるってね。 上級者スレに解説動画があったけど面白かったよ。
838 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 09:36:45.93 ID:gGqp1fFu.net] >>814 >ページの単位は今も昔も4KBだ。その方法ではインスタンス毎の確保は出来ないと分かるだろ。 ごめん、これがよく分かんない。 MMUのページ単位が4KBなのと、インスタンス毎の確保はできないってのがつながらない。 てかここで言うインスタンスって何?
839 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 09:55:06.11 ID:+lRq1NsW.net] >>824 インスタンス1つにいちいち4KBもアロケートするのかって話だろ
840 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:01:56.96 ID:gGqp1fFu.net] >>825 別に1回のmallocで必ずしも毎回4KBのベージを割り当てる必要ないのでは? mallocするのが小さいサイズなら確保済みの4KBの空いてるとこから割り当てれば良いし。 実際にはどういう実装になってるか知らんけど。
841 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:10:27.96 ID:3yA/EH7F.net] そもそも動的メモリ確保/解放と仮想メモリ管理は直接関係ない話 組み込みだとMMUなんて存在しない環境もある
842 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:12:51.74 ID:Bduckbke.net] >>826 それだとお前のレス > freeするならどこからか借りていたメモリ領域を返却するわけで、仮想メモリ返却にはMMUを使ったページ管理が必要だよね? > 仮想メモリページ管理はメモリマネージャー的なカーネルモードドライバが必要なはずで、つまり解放時にはシステムコールを伴う。 と矛盾するだろ。 お前は日本語が駄目なタイプか?
843 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:15:40.02 ID:gGqp1fFu.net] >>828 そういう意味では、厳密には「4KB以上のfree」と書くべきだったかな? ページサイズに言及したのは先の書き込みの後なので別に論理矛盾はないと思うけど。
844 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:25:31.57 ID:+lRq1NsW.net] >>826 うん、俺もそう思うし 実際の実装もそうなっているのが多い ただし4KBではなく1MiBとかだけど
845 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:29:17.43 ID:Bduckbke.net] >>829 ぷろぐらみんぐのまえににほんごをがんばれ
846 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:29:54.08 ID:gGqp1fFu.net] 業務に関係なく完全に知的好奇心からのmalloc実装の想像だったので、やっぱりglibc読んでみよう。 色々レスくれた人、ありがとう。
847 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:38:55.04 ID:LzkjeqyB.net] ファイルシステムの管理領域が大きくなりすぎて、 4KB以下のページサイズには出来ない 4MBで千個、4GBで百万個のページを管理しないといけないから、 管理領域だけでも、100MB以上になる だから、ページサイズをもっと大きい、2MBにすると、 2GBで千個、2TBで百万個のページを管理できるから、今のHDD の容量に対応できる
848 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:43:05.81 ID:+lRq1NsW.net] HDDだとシリンダ容量との親和性を考えないとね だけどSSDが普及してる今どきの事情だとどうなんだろう
849 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:55:59.74 ID:AeS6DVc8.net] >>833 > 4MBで千個、4GBで百万個のページを管理しないといけないから、 > 管理領域だけでも、100MB以上になる 管理領域ってどう計算してるの?
850 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:58:20.45 ID:cJyrgWby.net] 一領域当たり100byte
851 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 11:02:40.38 ID:AeS6DVc8.net] >>836 すまん、聞き方がアホだった その1領域が100Byteになる理由を聞きたかった
852 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 11:31:35.27 ID:Bduckbke.net] >>833 つHugePage
853 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 16:08:33.18 ID:u7HqPj1f.net] utf8procというUnicodeライブラリを使いたいのですが、C99に準拠してるかどうかって分かりますか? 「emulate C99 bool」というコメントがソースコードにあったのでおそらくC89あたりからサポートしていると思うんですが。 https://github.com/JuliaStrings/utf8proc
854 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 17:17:58.22 ID:AMMRWQYD.net] >>839 C99に準拠している そのコメントの少し前に 「MSVC prior to 2013 lacked stdbool.h and inttypes.h」ってコメントがあるからWindowsの古い環境のためにboolとかを定義しているだけだね
855 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 18:36:43.66 ID:LzkjeqyB.net] OSのすべての機能を学びたいなら、ムック本の Linuxエンジニア養成読本、第3版、2016 カーネル、起動処理、仮想記憶、 ファイルシステム、シェルスクリプトなど ファイルシステム・管理領域の仕組みなどを読んで
856 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 18:44:21.19 ID:+lRq1NsW.net] タネンバウム先生の本でしょ すごい弟子を育てた伝説の師匠
857 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 18:49:46.85 ID:kiLcyFGE.net] なにそれ、すごい面白そう! アラサーだけどまだまだ青二才だしとっても勉強になります!
858 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 19:31:07.27 ID:AeS6DVc8.net] >>841 >>837 にレス頼む
859 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 05:27:49.39 ID:pVz5FNGY.net] >>840 ありがとうございます! これでUnicodeが古い環境で心置きなく使えますわ。
860 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:54:16.40 ID:/XE3HNn6.net] ここのスレの人はValgrindは 使っているんだろうか。 メモリリークとか考えれば ぜひ使うべきツールだと思う。 https://qiita.com/tjun/items/e9d2f7da3c94eb0240d8
861 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 15:31:42.46 ID:pIlBTOwT.net] 便利だよね ただ役に立ってるときはクソコードを触ってるときでもあると思う
862 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 15:44:39.72 ID:DwszjCT1.net] 変数中の "1" のビット数を数える効率的方法ありますか? aが32ビットとして for (i = 0; i < 32; i++) { j = j + a & 1; a = a >> 1; } みたいに1ビットずつカウントするしかないでしょうか あるいは、8bitとかで区切ってテーブルを引いて加算とかでしょうか(16ビットや32ビットのテーブルは現実的でないので)
863 名前:デフォルトの名無しさん [2018/09/09(日) 15:50:52.78 ID:V1LakR3i.net] a=(a&0a55555555)+(a>>1 &0a55555555); a=(a&0a33333333)+(a>>2 &0a33333333); a=(a&0a0F0F0F0F)+(a>>4 &0a0F0F0F0F); a=(a&0a00FF00FF)+(a>>8 &0a00FF00FF); a=(a&0a0000FFFF)+(a>>16 &0a0000FFFF);
864 名前:デフォルトの名無しさん [2018/09/09(日) 15:53:41.89 ID:V1LakR3i.net] a = (a & 0x55555555) + (a >> 1 & 0x55555555); a = (a & 0x33333333) + (a >> 2 & 0x33333333); a = (a & 0x0F0F0F0F) + (a >> 4 & 0x0F0F0F0F); a = (a & 0x00FF00FF) + (a >> 8 & 0x00FF00FF); a = (a & 0x0000FFFF) + (a >> 16 & 0x0000FFFF);
865 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 16:07:17.49 ID:TAQT5wBe.net] 32ビットだしその書き方良くないと思います
866 名前:デフォルトの名無しさん [2018/09/09(日) 16:54:40.77 ID:V1LakR3i.net] https://ideone.com/FGqs1S なにも問題ない レスをコピペで普通に動く アホがいちいち車輪の再発明するよりとりあえず↓コレ使っとけば間違いない gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html Built-in Function: int __builtin_popcount (unsigned int x) Returns the number of 1-bits in x. Built-in Function: int __builtin_popcountl (unsigned long) Similar to __builtin_popcount, except the argument type is unsigned long. Built-in Function: int __builtin_parityll (unsigned long long) Similar to __builtin_parity, except the argument type is unsigned long long.
867 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:39:09.00 ID:/XE3HNn6.net] >>847 自作ツールで無茶苦茶 役に立ってしまった。 そうか、クソコードだったかw それはさておき今回の発端>>757 は、 メモリリークなんか気にしはじめたら 修正コストがどれくらいかかるか わからない、それだったら現状で 問題は表面化してないし、 そのままでいいじゃん、みたいな 状況だと思う。 Vargrindを導入して 手軽にメモリリークを チェックできれるようになれば、 上司にもとりあえず直しましょう という説得ができる チャンスもあるかも。
868 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:57:06.08 ID:2r/FT+Vi.net] >>850 うまいやり方だなぁ
869 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:57:22.00 ID:lGJ+2GvF.net] >>850 この式は初めて見ると訳の分からない呪文みたいだけど、 落ち着いて考えると分割統治の技法を並列処理してるんだよね。 これで1の立ってるビットの数が分かる理由を考えるのは良い教材かと。
870 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 18:06:01.01 ID:2r/FT+Vi.net] >>850 少なくとも最後の行だけは a = (a + (a >> 16)) & 0x0000FFFF; の方がよさそう。 正確には最大 32 にしかならないから & 0x0000001F でもよさそうだし、値の上限を考えながらだと途中の行ももう少し演算を減らせたりするかも?
871 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 18:06:59.52 ID:2r/FT+Vi.net] >>856 0x0000003F だったw
872 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 20:35:00.38 ID:2r/FT+Vi.net] >>850 a = (a & 0x55555555) + (a >> 1 & 0x55555555); a = (a & 0x33333333) + (a >> 2 & 0x33333333); a = (a + (a >> 4)) & 0x0F0F0F0F0F; a += a >> 8; a = (a + (a >> 16)) & 0x3F; でも同じ結果が得られた。 最適化無しだと 9% くらい速くなった。
873 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 20:36:22.47 ID:2r/FT+Vi.net] >>858 0F 多すぎw 0x0F0F0F0F ね
874 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 21:00:45.14 ID:4c2hO8gX.net] しね
875 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 21:13:17.93 ID:2r/FT+Vi.net] a = (a & 0x55555555) + (a >> 1 & 0x55555555); a = (a & 0x33333333) + (a >> 2 & 0x33333333); a = (a + (a >> 4)) & 0x0F0F0F0F; a = (a * 0x101 * 0x10001) >> 24; にしたら >>850 より 24% 速くなった(pentiumM linux)。 でも gcc の速度最適化を入れるとどれも変わらないね。
876 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 21:19:41.88 ID:4c2hO8gX.net] なに1人ではしゃいでんのこいつ。
877 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 21:28:41.02 ID:Vmegj8Hy.net] CPUにそういう命令なかったっけ? 使うところでは割と使いそうだけど
878 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 21:45:09.16 ID:5vkdTLeD.net] >>863 AlphaとかM16Cとか古いCPUにはあった気がする。 最近はあんまり見ないね。
879 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 21:54:33.81 ID:nMOWxsiw.net] ああ、SSEにpopcntがあるね
880 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 22:32:42.62 ID:hCV1tk8e.net] ポックント
881 名前:デフォルトの名無しさん [2018/09/10(月) 02:37:34.95 ID:hUyLWeb6.net] ビットを数える・探すアルゴリズム www.nminoru.jp/~nminoru/programming/bitcount.html
882 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 10:36:25.17 ID:o5mvkory.net] ビット数の数えあげが欲しくなるのってパリティチェックで末尾付加したりするとき?
883 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 10:44:53.73 ID:cl7nWcjG.net] ソケットみたいにフラグをビット管理してるときとかもほしくなるかな
884 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 10:56:31.39 ID:ddUFIgl6.net] 符号とか暗号とかの世界ではしょっちゅう使うよ。 1の数で最適なアルゴリズムが変わるってケースもあるし、 暗号にサイドチャネル攻撃仕掛けるにはハミング距離とか重要。
885 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 11:27:01.59 ID:o5mvkory.net] >>870 はなんとなく理解できるけど >>869 のほうは想像がつかないな ビット管理されたフラグと ONしてるビット数による分岐や演算法が変わるのが直結しない感じ
886 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 11:51:19.73 ID:kNISuHie.net] フラグは数えねえよな 性能重視でもなければビットフィールド使って読みやすくして欲しいわ
887 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 11:54:23.84 ID:iqhXZjjt.net] バラで書くから読みにくいのであって 関数にしておけば外から見た仕様は変わらない
888 名前:デフォルトの名無しさん [2018/09/10(月) 12:16:32.03 ID:/R6yufrK.net] 普通の通信でエラー検出以外の目的でビット数を数える必要性がわからない。 そんな特定のCPU以外は必ず無駄な計算が必要になる方式をなぜ使う?
889 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 12:46:33.22 ID:x2RTnFiS.net] >>874 エラー検出、訂正目的以外の通信のためにビットの数え上げするって誰かレスしてたっけ?
890 名前:デフォルトの名無しさん [2018/09/10(月) 15:09:59.53 ID:rXvKnWV4.net] >>875 >>869 はそうではないのか?ならば居ないな。
891 名前:デフォルトの名無しさん [2018/09/10(月) 19:25:38.98 ID:YAHzQjjo.net] >>821 んーこの文章読むと、よく教科書的な本に書かれてる関数に対してexternを書きましょうってのは冗長で不要って話なのね。確かに実際の動きとは合うし勉強になりました。 >>822 書いてる意図を汲めてるのか自信ないけど、他のサイトにもリンカ依存とあって、この話が全ての環境に対して正しい話なのか・・・若干不安はある感じ?
892 名前:デフォルトの名無しさん [2018/09/10(月) 19:32:05.94 ID:WVFJrP31.net] Common Lisp にビットを数える関数があるけどcでも同様のものがあったようなゔ
893 名前:デフォルトの名無しさん [2018/09/10(月) 20:00:47.59 ID:pZnz0RBT.net] int a=0; printf("%p" ,a); printf("%p",&a); 同じアドレスが表示されると思っていたのですが、上下で違う数字が出力されました。 アドレスを表示するのはどちらが正しいのでしょうか? よろしくお願いします。
894 名前:さまよえる蟻人間 mailto:sage [2018/09/10(月) 20:06:35.73 ID:NJC2soWX.net] 下。
895 名前:デフォルトの名無しさん [2018/09/10(月) 20:07:47.31 ID:WGo2tHWR.net] >>879 &a の方。 ていうか同じになるわけがない。片方は printf() に a の内容である 0 を渡しているんだから。
896 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 20:26:02.04 ID:6MAzJtEj.net] %p は ポインタを要求しているが ポインタのサイズと intのサイズが違ってたら 鼻から悪魔
897 名前:デフォルトの名無しさん [2018/09/10(月) 20:28:01.62 ID:pZnz0RBT.net] >>880 >>881 >>882 指定子Pで&が付いてない方も変換されると思っていました。 ただの数値が表示されるだけなんですね。 int *a; int b=0; a=&b; printf("%p",a); この場合は&が付いてなくてもアドレスを渡してるのでokなんですね。 ありがとうございました。
898 名前:デフォルトの名無しさん [2018/09/10(月) 20:29:18.90 ID:WGo2tHWR.net] 天文学的な値が出るかも知れんね
899 名前:デフォルトの名無しさん [2018/09/10(月) 20:30:01.84 ID:WGo2tHWR.net] >>883 そうそう。そういうこと。
900 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 20:43:33.30 ID:l5sdNefZ.net] >>869 それはどっちかって言うとビットサーチだね 68020 とかの BFFFO 命令とか
901 名前:デフォルトの名無しさん [2018/09/10(月) 21:01:01.97 ID:XzQQxj6r.net] https://ideone.com/bsjclG また、低学歴知恵遅れのクルクルパーがウソ書いてるわ。。。 64bitのアドレス空間を持ってて、intのサイズが32bitならちゃんと動くワケがないからな
902 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:07:42.09 ID:XxqHEWUO.net] >>887 どの書き込みに対してのレス?
903 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:11:41.72 ID:7zqNUn7X.net] >>887 これまたチンケな知識でマウント取りに来たな w
904 名前:デフォルトの名無しさん [2018/09/10(月) 21:12:59.71 ID:XzQQxj6r.net] ID:WGo2tHWR ← コイツにきまってんだろ なあにが そうそう。そういうこと。 だ なにも知らないムクなヤツ相手に 低学歴知恵遅れの分際でテキトーなことばっかり書き込んでる
905 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:16:56.02 ID:XxqHEWUO.net] ん?これのこと? > printf() に a の内容である 0 を渡している
906 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:19:04.26 ID:6SoA/END.net] こんなにでかい釣り針だと 鯨が釣れるかも
907 名前:デフォルトの名無しさん [2018/09/10(月) 21:19:36.92 ID:XzQQxj6r.net] >>883 ← ムクな初心者 >>885 ← 低学歴知恵遅れ ID:WGo2tHWR 「そうそう。そういうこと。」 ← コレのコトだ 低学歴知恵遅れはレスもおえないの?
908 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:21:51.21 ID:XxqHEWUO.net] あれ? int *a; int b=0; a=&b; printf("%p",a); って別に正しくね?
909 名前:デフォルトの名無しさん [2018/09/10(月) 21:22:53.59 ID:XzQQxj6r.net] https://ideone.com/bsjclG この処理結果みても分からないなら オツムに相当な問題がある
910 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:25:52.44 ID:XxqHEWUO.net] ううむ、俺にはaは64ビット環境だと64ビット長に見えるのだが違うのか?
911 名前:デフォルトの名無しさん [2018/09/10(月) 21:27:36.20 ID:XzQQxj6r.net] で、処理結果みた? で、処理結果みた? で、処理結果みた?
912 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:29:43.88 ID:XxqHEWUO.net] おたくのサンプルは64ビットアドレスをintにキャストしちゃてるやん。そりゃ実行結果違うわ。
913 名前:デフォルトの名無しさん [2018/09/10(月) 21:31:35.87 ID:XzQQxj6r.net] https://ideone.com/PGwK6j キャストはずしたったぞ 当然、結果はかわらない やっぱりなこの板は低学歴知恵遅れしかいない この程度のこともわからずにいきってレスしてるワケだからな
914 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:31:51.59 ID:6MAzJtEj.net] たまたま 足りない分 0 を引っ張ってきてるけど(レジスタで渡ったから?) スタックに積んでるリターンアドレスの一部から足りないのを補ってると、もっとわけわかな数値に 未定儀の挙動を推測すすのもまたオツなもの か
915 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:32:51.
] [ここ壊れてます]
916 名前:39 ID:XxqHEWUO.net mailto: いやいや、883のaはポインタなんだってw なんでintに入れちゃうのw [] [ここ壊れてます]
917 名前:デフォルトの名無しさん [2018/09/10(月) 21:33:36.29 ID:XzQQxj6r.net] そんなことオレのしったことじゃないからな >>883 ← ムクな初心者 >>885 ← 低学歴知恵遅れ ID:WGo2tHWR 「そうそう。そういうこと。」 ← コレのコトだ 低学歴知恵遅れはレスもおえないの?
918 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:40:38.56 ID:lZ/O7dtJ.net] 半角クンていつも周りを見ずに自分の思い込みだけでレスしちゃって誤り訂正できないから、恥ずかしい(*/□\*) 直進しかできない目隠しされたイノシシみたい
919 名前:デフォルトの名無しさん [2018/09/10(月) 21:42:09.42 ID:XzQQxj6r.net] なにが間違いなわけ 指摘してみ 一切間違ったこと書いてないからな 低学歴知恵遅れはそもそも認知能力に問題がある
920 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:47:36.63 ID:XxqHEWUO.net] なぜ64ビットポインタをintに入れたの? 883ではそんなこと一切してないんだけど。 逆に >printf() に a の内容である 0 を渡している は整数リテラルがintなのに%pで受けてるので、64ビット環境なら4バイト分スタックのゴミを拾ってきそうだけど。
921 名前:デフォルトの名無しさん [2018/09/10(月) 21:48:46.40 ID:XzQQxj6r.net] はずかしくなって こっち側にこようとしても もう手遅れだからな
922 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:50:57.43 ID:XxqHEWUO.net] なんだ、結局はaがポインタだってことを見逃しただけかよw
923 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:55:18.07 ID:cYYSBBs1.net] >>906 つ鏡
924 名前:デフォルトの名無しさん [2018/09/11(火) 00:11:24.08 ID:X6CualfE.net] >>887 >>883 はちゃんと動くよ。
925 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 06:35:01.60 ID:pvBPsgEg.net] >>909 半角野郎が数行のプログラムも理解できないくせに自分で改竄したコードが動かねぇって騒いでただけ。 半角野郎こそ低学歴知恵遅れクルクルパーで認知能力とオツムに相当な問題があるってことが証明されただけなので気にするな。 本人は顔真っ赤にして逃げたみたいだけど。
926 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 07:57:47.34 ID:2zsIBj+S.net] ポインタを受け取るべき%p変換指定子に、ポインタでない値を与えることの 危険性は >>882 ですでに指摘されてるのに、後乗りで書いた >>887 で こんだけ引っ張れるのは、ある意味で才能かもな。 汚い言葉遣いを我慢しながら拝聴するほど啓蒙的な内容でもないし。
927 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 08:11:06.15 ID:NBDkJ3+C.net] >>911 半角クンのレスは、5%の真実と15%の間違い・思い込みと80%の繰り言・罵詈雑言でできてるからね。まっとうに読む価値はない。
928 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 09:54:24.68 ID:oX9GyHv1.net] まれにいいこと言う 850とか
929 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 10:00:02.68 ID:R1B4IsqD.net] 釣り針が大きすぎて、クジラじゃないと釣れない
930 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 11:44:57.89 ID:zLtJmO+E.net] musl-libcのiconvコマンドの本体ってここを見ればいいよね? https://git.musl-libc.org/cgit/musl/tree/src/locale/iconv.c