C言語なら俺に聞け 163at TECH
C言語なら俺に聞け 163 - 暇つぶし2ch706:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b132-FOV+)
25/02/23 20:21:42.14 5K9CwmG10.net
>>684
-0 はいくつかの具体的な最適化オプションを束ねたものだよ。
URLリンク(gcc.gnu.org)
このうちのどれが効いてるのかは知らんけど。

707:デフォルトの名無しさん
25/02/23 21:01:43.23 VuC2otmU0.net
>>685
最適化オフでのリリースは一つの有力な選択だと思います。

708:デフォルトの名無しさん
25/02/23 21:45:10.07 K8mfivgh0.net
最適化に副作用あるのは常識

709:デフォルトの名無しさん
25/02/23 21:54:21.08 FQnOu1obM.net
>>688
まザコならしょうがないわな
組み込みならハードのコスト一段下げられるけど諦めるしかない
そんなザコ会社だから低収入もしかたない

710:デフォルトの名無しさん
25/02/24 01:00:54.17 IorN2uWP0.net
自己紹介かな

711:デフォルトの名無しさん
25/02/24 17:12:08.95 qLUUxQg70.net
gccなら-O0でも実施される最適化はあるので本気で最適化オフにしたいなら-O0で有効になる項目を-fno-に個別に指定する必要がありそこそこ面倒

712:デフォルトの名無しさん
25/02/24 17:18:13.77 SlW5Uo1a0.net
最適化オフとか言ってる人は、UBを踏んでしまってるから最適化で動作が変わるってことわかってんのか?

713:デフォルトの名無しさん
25/02/24 17:22:09.48 qLUUxQg70.net
まあコンパイラの最適化バグである可能性もないわけではないがな

714:デフォルトの名無しさん
25/02/24 20:28:13.00 V/nislFh0.net
組み込み分野だと最適化によりデバッグがしづらくなることが多い。

715:
25/02/24 21:56:17.54 JeKlmQzN0.net
gccで -O2 なし -Wall ありでコンパイルすると strict aliasing の警告がでないけど、
-O2 -Wall ありだと strict aliasing の警告が出るケースに当たったのだけど、
strict aliasing って安全に最適化するためのアレなのですかね(最適化しないときは strict aliasing には無頓着)

716:デフォルトの名無しさん
25/02/24 22:52:40.44 ifUFLigf0.net
この人たち�


717:zントgccが大好きだよね



718:デフォルトの名無しさん
25/02/24 23:27:53.22 LsxokMxo0.net
gccはいろんな環境で動かせるので便利ではある

719:デフォルトの名無しさん (ワッチョイ ae76-A0+M)
25/02/25 01:13:30.67 t+eQGWY+0.net
>>695
それ組み込み関係ないから

720:はちみつ餃子
25/02/25 08:31:05.22 6jOr+W/20.net
>>696
警告を出すためには警告の条件に引っ掛かっていることがわからないといけないという単純な前提がある。
結果を使いもしないのに警告のためだけにエイリアス解析を頑張るのは合理的か?

721:デフォルトの名無しさん
25/02/25 09:04:02.65 ODzMt1Nm0.net
>>699
そうだった

722:
25/02/25 23:42:18.97 MFbkYyJ10.net
>>700
最適化しないときは strict aliasing が不要なものなんですかね(最適化のための strict aliasing なんですかね)というつもりで書いたのだけど、分かりにくくてすまんね

723:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ b132-Ah42)
25/02/26 10:14:24.43 6jOr+W/20.net
>>702
少なくとも GCC や Clang では strict aliasing rules は最適化のためのものという認識で正しいよ。
-fstrict-aliasing (やこれらを含む -O2 以上の最適化) が有効になっているときに限りエイリアスベースの最適化をするし、そのときだけ strict aliasing rules が守られていることを要求する。

724:デフォルトの名無しさん
25/02/26 11:04:16.19 x+jOZkKw0.net
strict aliasing rulesを守らないと未定義動作となるのはC言語の決まりなので特定の処理系で問題ないから守らなくて良いという考えは馬鹿のすること

725:デフォルトの名無しさん
25/02/26 11:20:14.18 t+eQGWY+0.net
というかstrict aliasing rulesをわかってるやつがあえて守らないって考えにくいでしょ
このスレを見てわかる通りわかってないやつらが大半

726:はちみつ餃子
25/02/26 11:38:18.47 6jOr+W/20.net
ビットパターンを別の型で読み替える可能性があるなら最初から union で書いておいたほうが人にとっても読みやすいしな。
(C++ では union でも common initial sequence の読み替えしか許しておらず、 C より制約が厳しいので注意。)

727:はちみつ餃子
25/02/26 15:23:36.19 6jOr+W/20.net
>>704
未定義は「規格としては何も要求しない」なので処理系が何らかの追加保証をすることを禁じてない。

728:デフォルトの名無しさん
25/02/26 15:45:51.57 x+jOZkKw0.net
特定の処理系と心中するつもりでstrict aliasing rulesを守らない奴がいたらすごい馬鹿

729:
25/02/26 23:04:05.93 0kyhL3S/0.net
>>703
助言をありがとうございます!!
>>702 より

730:デフォルトの名無しさん
25/02/27 00:09:51.30 oCSgSskf0.net
>>708
移植しないなら別にいいんじゃないの

731:デフォルトの名無しさん
25/02/27 08:29:36.37 Uw13P3Kf0.net
>>710
将来の更新の可能性も考慮しないわけね

732:デフォルトの名無しさん
25/02/27 09:04:57.33 smeEQtfp0.net
だから将来も移植しないんだろ

733:デフォルトの名無しさん
25/02/27 09:23:08.30 Uw13P3Kf0.net
移植と更新は違うぞw

734:デフォルトの名無しさん
25/02/27 10:21:51.11 6jIPAcTSM.net
そのどうでもいい仮定話いつまでやんの?

735:デフォルトの名無しさん
25/02/27 22:25:43.54 rdt/oSxr0.net
【帰化朝鮮人を論破】
日本は帰化朝鮮系の家系の人間によって隣国の大韓民国と北朝鮮に侵略行為を受けている
彼らがやっていることは「差別」を盾にした日本人を対象にした迫害であり「民族浄化」である
国際法でもこのような行為は決して許されていない
しかし何となく加害者が日本人で、差別されているの朝鮮系と言う意識を刷り込まれて彼らに遠慮してないか?

事実は逆である、加害者は彼らの方で迫害されているのは日本人である、まずこの意識を共有しよう

なぜそうなっているのか? 新聞、出版社、司�


736:@、テレビ局、会社の起業家、大学教授などが帰化系の人間で徒党を組み 日本人を差別、排除してまるで日本人であるかのように振舞っているからである テレビに映り世論を形成している人間が日本人の振りをして韓国、北朝鮮に有利になるように論調を組み、 日本を支配し、日本人が朝鮮人に隷属することを強要している これが侵略行為以外のなんなのか? なぜ日本人が日本で差別の対象にならなければいけないのか? 帰化系が起業し外部の朝鮮系と通じ合い会社を成功させる、または帰化系が既存の会社組織でトップに居座り 管理職を帰化人系のみで固め、日本人は閑職に追いやられ、パワハラで辞職に追い込まれ その会社の技術を朝鮮半島に流出させ、日本企業が競争力を失っていく 芸能人、テレビ局員、スポーツ選手(五輪代表、野球、サッカー)、報道関係者は帰化系で独占されている もはやテレビに映る人間はほとんど日本人ではないと考えろ  では何をするべきか? もはや野党はほぼ全員、もはや自民党も過半数以上は帰化朝鮮人系の家系の人間が国会議員を占有しつつある まず「政治家に立候補する時、外国の家系の人間か否かを公表する」を提出して過半の賛成を取って立法化しよう 国際的にもごく一般的で、アメリカでも何系かはすべて明らかにされている そうなると帰化人の家系の人間に支配されたメディアは差別だと糾弾し始め帰化人たちが暴動やら起こすだろう、 日本は荒廃の一途を辿る、内戦状態に近いものになる だがそれは当然のこと、国内で隣国の人間による侵略行為、民族浄化行為を受けているのだから 時間はあまりない、やつらが過半数を確保してからでは遅い、韓国北朝鮮に占領されてしまう 日本人よ、まず声を上げるのだ



737:デフォルトの名無しさん
25/02/27 22:56:45.28 c6/rsZNB0.net
まず統一を潰さないと

738:デフォルトの名無しさん
25/02/28 00:14:09.12 FWjziINm0.net
>>714
次のお題が来るまで(w

我流独習マン(俺含む)には、こそっとありがたい話
ややもするとすぐ浦島になっちまうw

739:はちみつ餃子
25/02/28 10:32:16.41 aDguz5rE0.net
>>706
念のために確認してたら union のメンバを他の型の違うメンバで読み替えて良い規則は JIS (JISX3010:2003) には書いてないっぽい。
欠陥報告で後から修正したから JIS を出した時点では原文にも書いてなかったんだな。
URLリンク(www.open-std.org)

740:はちみつ餃子
25/03/11 17:38:04.47 GvJGmymX0.net
C の公式サイトが登場!
URLリンク(www.c-language.org)

741:デフォルトの名無しさん (ワッチョイ dd01-ctMQ)
25/03/12 20:15:01.01 echC0lcV0.net
AIのおかげでCが主流になるかもな

742:デフォルトの名無しさん (ササクッテロル Sp85-ZS5M)
25/03/12 21:03:53.54 pJ5qTyUbp.net
>>720
それは無い

743:デフォルトの名無しさん (ワッチョイ 794b-XET2)
25/03/12 21:59:36.42 WyQEi83H0.net
AIコーディングが進化した結果直接機械語で出力できるようになったけど人間が読めないのは困るから最低限人間が読めて速度も出るCで出すのが主流になるみたいな妄想

744:デフォルトの名無しさん
25/03/12 22:07:09.85 /p3tzJNRp.net
AIは何も指定しなきゃjavaやpythonやC#のコードを吐き出す�


745:�



746:デフォルトの名無しさん
25/03/18 10:34:05.62 mIJI9ibF0.net
cはむずい定期

747:デフォルトの名無しさん
25/03/19 20:09:43.41 WDKEEomI0.net
文法的にはポインタ周りが(少し)難しいだけ
個人的にはpythonの方が難しく感じるな

748:はちみつ餃子
25/03/19 20:44:03.52 SWZJHd7L0.net
C が未定義をエラーとして補足せずに黙って変になることがあるのは入門書などをまともに読まずにいろいろ弄って学ぶタイプの人には向いてないな。
ちゃんとした入門書をちゃんと読むならそんなに難しいわけではない。
しかし難しくないことでもしょうもないミスをするのが人というものだという現実もあって、特に規模が大きくなると C はしんどい。
難易度とかいうのとは別の話として、理解していても間違う。

749:デフォルトの名無しさん
25/03/20 04:57:02.69 07u24rkx0.net
まあしかしこの頃のコンパイラは警告やエラーを沢山出してくれて分り易いよ。
昔のはチェックが緩くて出なかったからな。
その状態から gcc で printf() のフォーマットと引数のチェックが出来ると知った時は衝撃を受けた。

750:デフォルトの名無しさん
25/03/20 17:01:49.87 iinwNT6F0.net
>>727
それな、オプションさえちゃんと付ければ昔でもできてたよ

751:はちみつ餃子
25/03/20 17:31:14.06 PqZkwPwR0.net
GCC では遅くても 2.95.3 には attribute で文字列が書式であることを指定できて型チェックする機能はあった模様。(2001年頃)
URLリンク(gcc.gnu.org)
ただな、このスレにいるようなおじさんの言う「昔」は 1980 年頃の話だったりするんよ。
MS-DOS 用とか CP/M 用とかのコンパイラの話なんよ。

752:デフォルトの名無しさん
25/03/20 17:39:11.70 Enps6Akh0.net
その年代の人はおじさんじゃなくておじいさんでは

753:デフォルトの名無しさん
25/03/20 17:45:05.08 iinwNT6F0.net
>>729
スマソ、俺はちょっと若すぎたわ
だいぶ昔からできてた記憶があったがそれよりさらに昔の話とは恐れ入った先輩

754:デフォルトの名無しさん
25/03/20 18:23:15.20 0dSk8Oyx0.net
メインフレームにダム端末繋げてた時代じゃよ

755:デフォルトの名無しさん (スフッ Sd33-4EpX)
25/03/20 23:54:14.30 t3XlSG3jd.net
gcc7.1から突然エラーメッセージが親切になったのはあるな
ちょうどclang+llvmが話題になった時期でそれに対抗したらしい

756:デフォルトの名無しさん
25/03/21 07:44:18.11 6cMMiEqo0.net
>>728
それはどのぐらい昔かによる。
80年代後半にはまだなかったと思う。

757:デフォルトの名無しさん
25/03/21 07:45:09.98 6cMMiEqo0.net
>>729
そうそう。80年代。

758:デフォルトの名無しさん
25/03/21 08:19:02.26 kfFumR870.net
真理子版が便利すぎた。

759:デフォルトの名無しさん
25/03/22 13:52:41.80 A90b+kK90.net
他人にも使わせるツールに環境変数「真里子」はキモすぎてビビった

760:デフォルトの名無しさん
25/03/22 14:25:25.39 U6/Lg1xxa.net
>>729
scanf, sscanf で float, double に %f, %lf のところを %f, %f にしてバグるのがありがち

761:627
25/03/22 15:31:32.91 7ZrFn0ve0.net
scanfなんて使ったことねーや
ありがちってほど使ってるんか

762:デフォルトの名無しさん
25/03/22 15:40:39.16 8J5Eq6PC0.net
scanfに道に落ちているを食べさせてはいけません

763:デフォルトの名無しさん
25/03/28 08:23:03.00 +OZuQWBg0.net
この警告、環境によっては出ないの?

$ cc ld.c -Wall
ld.c: 関数 ‘main’ 内:
ld.c:6:19: 警告: 書式 ‘%d’ は引数の型が ‘int’ であると予期されますが、第 2 引数の型は ‘off_t’ {aka ‘long int’} です [-Wformat=]
  6 |  return printf("%d", offset);
   |         ~^  ~~~~~~
   |          |  |
   |          int off_t {aka long int}
   |         %ld
$ cat -n ld.c
   1 #include <stdio.h>
   2 #include <sys/param.h>
   3
   4 int main() {
   5  off_t offset = 1;
   6  return printf("%d", offset);
   7 }
   8

764:デフォルトの名無しさん
25/03/28 08:29:47.68 v2Oxq7uoM.net
おれの作ったCコンパイラはそんな警告出さないけど何か文句ある?

765:740
25/03/28 09:29:48.60 +OZuQWBg0.net
>>742
あー、なるほど。↓よ。

$ cc --version
cc (GCC) 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

766:はちみつ餃子
25/03/28 11:25:13.48 gM96YdDw0.net
>>741
出さないコンパイラはあるし、その場合に警告を出すコンパイラであっても printf 類を特別扱いしてなんとかしてるので、可変長引数一般では型が合わないときに検出されない。

767:740 (ワッチョイ 492a-aKLX)
25/03/28 13:15:49.58 +OZuQWBg0.net
なるぽろ。%ld に変更せず、放っておくか。ありがとう。

ちなみに、逆に、%ld だと警告する場合も有り得るのだろうか。例えば off_t が非 long の機種があるとか。

768:はちみつ餃子 ◆8X2XSCHEME (ワッチョイ ed32-p0tU)
25/03/28 13:32:37.75 gM96YdDw0.net
x86-64 なら System V ABI ではどうせ 64 ビットレジスタで受け渡されるからそこんところでは問題にならないのだが、最適化したときにどうなるかまるで予想がつかない。 放置してよいとは言えない。

いったん intmax_t にキャストするのが正当な方法だと考えられている。
URLリンク(www.jpcert.or.jp)

769:デフォルトの名無しさん
25/03/28 15:39:13.17 Gm0qUC0n0.net
struct X* x;で自動変数を定義した場合
スタック上のどこかにstruct Xの領域が確保されたりしますか?

770:デフォルトの名無しさん
25/03/28 15:47:02.39 v2Oxq7uoM.net
されない

771:740
25/03/28 17:27:47.76 +OZuQWBg0.net
>>746
> printf("%ju", (uintmax_t) x);

なるぽろ。ありがとう。

772:デフォルトの名無しさん (ササクッテロラ Spf1-7PGi)
25/03/28 19:09:11.37 Yj8GIx0sp.net
なんだよjって、何の略だ?

773:はちみつ餃子
25/03/28 22:16:42.65 gM96YdDw0.net
>>750
なんらかの単語の略 (頭文字) というわけではないらしいよ。
> j is sort of like "i" for integer
URLリンク(www.open-std.org)

774:
25/03/28 23:06:36.11 UFqBPtr80.net
μ→uみたいなものか

大文字の I はもう使われてふのかな?

775:デフォルトの名無しさん
25/03/29 16:07:35.02 M3jsTRd4a.net
long long や unsigned long long の出力に %lld や %llu って昔は使えてた気がするが
最近はだめなんかな
%I64 とか %U64 みたいなのになってるん

776:はちみつ餃子
25/03/29 16:54:36.19 HRez4USp0.net
>>753
I64 とかはマイクロソフトの拡張。
新しい方法じゃなくてむしろ古い方法が互換性のために残されているだけ。
今となってはあえて使う理由はない。

777:デフォルトの名無しさん
25/03/29 17:30:28.12 bd7PveSA0.net
>>753
> %I64 とか %U64

移植が大変そうね。

778:デフォルトの名無しさん
25/04/08 18:05:53.82 f9O97Hv70.net
sudo で実行すると execl が動作しないように見える。なぜ?
$ cat -n e.c
   1 #include <stdio.h>
   2 #include <unistd.h>
   3
   4 int main() {
   5  pid_t pid;
   6  if ((pid = fork()) > 0) return 0;
   7  else if (pid < 0) return 1;
   8  execl("/bin/bash", "/bin/bash", "-c", "echo $$ $PPID >> /tmp/log", NULL);
   9  _exit(2);
  10 }
$ gcc -g e.c
$ ./a.out
$ cat /tmp/log
10593 1566
$ sudo ./a.out
$ cat /tmp/log
10593 1566
$

779:627
25/04/08 19:31:31.59 HmugccjD0.net
まずコピーするなら手を入れるな手を入れると他も全部疑わなきゃいけなくなる
それからsudo -E ./a.outとsudo strace ./a.outを試せ

780:デフォルトの名無しさん
25/04/08 19:45:35.63 dAM9KaxA0.net
縦の数字はなに?
普通にエラーになるだろそれ

781:デフォルトの名無しさん
25/04/08 20:08:58.79 0fraKCca0.net
catの引数に-n指定してるからだろ

782:デフォルトの名無しさん
25/04/08 20:57:19.94 brzdTu7q0.net
手元にあるfedora で試したが、
sudo ./a.out の結果表示は2行になった
多分、正常に処理できたようだ

783:
25/04/08 22:40:53.76 NxLLuNcW0.net
うちはダメでした
>>756 と同じような結果です
ubuntu22.04 lts

784:
25/04/08 22:43:01.77 NxLLuNcW0.net
あ、次のようにしたときです
sudo ./a.out

/tmp/log に追記されませんでした

785:755
25/04/08 22:49:40.17 Rmhs1Vne0.net
>>760
えー!? と別環境で実行したら、sudo でも execl が動作したように見える。なにこれ。

$ ./a.out
$ cat /tmp/log
13706 1
$ sudo ./a.out
$ cat /tmp/log
13706 1
13721 1
$

取り敢えず、うちの Ubuntu の「おま環」問題のようでした。お騒がせしました。
ただ、今回のは bash の $PPID が init (1) になるという新たな謎が...

786:はちみつ餃子
25/04/09 00:22:33.67 06ntJanv0.net
親プロセスが先に死んだら子は init の養子になる。
だけどこの場合だとどちらが先に死ぬかはプロセスのスケジューリング次第で状況によるってことなんじゃないのかな。
Linux の事情はよく知らんけど。

787:デフォルトの名無しさん
25/04/09 00:23:29.81 Z/QH/Jgt0.net
Linux 板で聞いた方が回答ありそうな気がする。

788:デフォルトの名無しさん
25/04/09 15:00:16.84 cB69i6Vg0.net
const unsigned char t100_day[3807] PROGMEM = { 0x89, 0x50, 0x4e, 略, }
const unsigned char t100_night[3568] PROGMEM = { 0x89, 0x50, 0x4e, 略, }

String tenki_i = "01";

char*const unsigned char t100_day[3807] PROGMEM = { 0x89, 0x50, 0x4e, 略, }
const unsigned char t100_night[3568] PROGMEM = { 0x89, 0x50, 0x4e, 略, }

String tenki_i = "01";

char* y_icon; // FIXME 型が分からない

if (tenki_i == "01") y_icon = "t100_day";
else if (tenki_i == "01_n") y_icon = "t100_night";
else if (tenki_i == "08") y_icon = "t200_day";
else if (tenki_i == "08_n") y_icon = "t200_night";
else y_icon = "t999_day";

sprite.drawPng((std::uint8_t*)y_icon, sizeof(y_icon), 0, 25);


t100_dayなどは画像なんですけど、tenki_iの中のstrによって画像を変えたいです。
y_iconはどうやって指定したらいいでしょうか?

789:デフォルトの名無しさん
25/04/09 15:01:47.32 cB69i6Vg0.net
>>766
コピペ間違えました
正しくは以下です


char*const unsigned char t100_day[3807] PROGMEM = { 0x89, 0x50, 0x4e, 略, }
const unsigned char t100_night[3568] PROGMEM = { 0x89, 0x50, 0x4e, 略, }

String tenki_i = "01";

char* y_icon; // FIXME 型が分からない

if (tenki_i == "01") y_icon = "t100_day";
else if (tenki_i == "01_n") y_icon = "t100_night";
else if (tenki_i == "08") y_icon = "t200_day";
else if (tenki_i == "08_n") y_icon = "t200_night";
else y_icon = "t999_day";

sprite.drawPng((std::uint8_t*)y_icon, sizeof(y_icon), 0, 25);


t100_dayなどは画像なんですけど、tenki_iの中のstrによって画像を変えたいです。
y_iconはどうやって指定したらいいでしょうか?

790:デフォルトの名無しさん
25/04/09 15:16:14.76 qDwL9bg0d.net
>>756もそうだし書いちまったもんはしょうがねーけどコードを載せる時は
どうしろこうしろって書いてあんだから従えよ
アンタどこ行ってもそんな感じなのか?

791:デフォルトの名無しさん
25/04/09 15:24:40.77 Hnk7Q6m60.net
すみません、書き直しました
URLリンク(ideone.com)

t100_dayなどは画像なんですけど、tenki_iの中のstrによって画像を変えたいです。
y_iconはどうやって指定したらいいでしょうか?

792:デフォルトの名無しさん
25/04/09 15:27:10.13 lI8vd/RJ0.net
>>756
fork呼んだ親プロセスがreturn 0でいきなり終わってるのがダメ
wait呼んでプロセスの終了待ちしろ

793:はちみつ餃子
25/04/09 18:01:06.77 06ntJanv0.net
>>769
その断片的なプログラムではよくわからんが型を合わせるだけなら y_icon の宣言はこうなるべきだと思う。

const unsigned char* y_icon;

794:はちみつ餃子
25/04/09 18:30:26.27 06ntJanv0.net
>>769
ところでそれは C++ じゃない?
なんでこのスレで聞くの……。

795:755
25/04/09 19:53:07.12 dFJfWRF+0.net
>>770
「お騒がせしました。」と言ったので、勝手ながら質問を終えた気がしていた。見てくれて有り難う。

>>756,763 については、Ubuntu においても sudo で execl は動作していた。
動作しないように見えたのは、Ubuntu 特有のファイル権限設定があり、root といえどもファイルにアペンドできないせいだった。Qiita にあったサマリが解りやすい。

URLリンク(qiita.com)追記
> Ubuntu の /tmp のユーザファイルに root で追記できない

全く C言語に関係なかった。ごめんちゃい。

796:デフォルトの名無しさん
25/04/20 14:12:51.27 RiHDJnuQa.net
stdbool.h 真面目に使ってる人いる?あるいは使ってない方がおかしい?

797:はちみつ餃子
25/04/20 16:06:51.19 srj6a33k0.net
原則としては論理型が必要であれば stdbool.h (内で定義される bool) を使うべきだと思う。
論理型が C99 で導入されるより前の古いプログラム中で bool という名前を使っている場合に配慮して論理型の名前を _Bool にした上でその別名の bool を stdbool.h 内で定義するという変な構成になっている。
(もし bool という名前を独自の定義で使っている場合は単に stdbool.h を使わないという選択が可能。)
このような状況から、互換性の問題がなければ論理型は bool という名前にしたかったし、論理型の値は true, false と書きたいという意図が感じられる。
自分が書くプログラム内で名前が衝突するような問題がないのなら意図に乗っかっておくのが無難そうに思われる。

C23 からは bool, true, false がキーワードとして直接にサポートされるようになって stdbool.h は意味を失いただ存在するだけになった。
こういう変更をする以上はこれが C のあるべき新しい姿と考えられてるってことなんだろう。
stdbool.h を使うことで (古い規格でも) 新しい姿を先取りできるわけ。

ただ、 C23 の変更はちょっとだけ互換性を損なう部分があるから注意を要する。
stdboo.h で定義される旧来の true, false は 1, 0 に展開されるマクロで、要するに型で言えば int だった。
C23 からの true, false は bool 型のリテラルという立場を持つ。
これが問題になるケースはそれほどないとは思うけど……。

798:デフォルトの名無しさん
25/04/20 16:30:31.97 VYLrteqj0.net
bool型だと関数成功はtrueで1
int型だと関数成功で0とか普通
混ぜるな危険

799:デフォルトの名無しさん
25/04/20 17:33:04.38 SQJ2+pRN0.net
戻り値が負数ならエラーってやつが(ry

800:デフォルトの名無しさん
25/04/20 18:02:02.88 AC61QJPP0.net
関数の結果がboolのやつはエラー原因丸めて何が問題かわからないからクソだよな

801:デフォルトの名無しさん
25/04/20 18:06:56.21 sZ1mcHs70.net
>>774
なんでstdbool.hがあるのかよく分からないってこと?

802:はちみつ餃子
25/04/20 19:55:37.89 srj6a33k0.net
>>779
「真面目に」というワードから「そんなにカッチリやるほどのもんかね?」みたいなニュアンスを感じる。
意味はわかった上でそれほど価値を感じてないのだと思う。

803:デフォルトの名無しさん
25/04/20 21:08:15.13 0ZeTNaMX0.net
#define false 1==0
#define true !false
不真面目なんでいつもこれでやってました

804:デフォルトの名無しさん
25/04/20 21:22:34.91 SQJ2+pRN0.net
>778
エラー理由が必要なやつは引数に返り値用ポインタ要求する設計になってんじゃね?

805:デフォルトの名無しさん
25/04/21 02:34:30.39 DqUDvQMka.net
>>778
関数の結果の型がboolのやつが-1を返す例もあってな

806:はちみつ餃子
25/04/21 05:17:15.86 jNnWMUsR0.net
>>781
stdbool.h がやってるような
#define false 0
#define true 1
ではなく無意味に遠回りな書き方をする理由は何?

807:デフォルトの名無しさん
25/04/21 05:35:14.60 gJLXVah/0.net
そういや、boolの実値は処理系依存とはるか昔に習ったようなキモス

808:デフォルトの名無しさん
25/04/21 05:47:00.09 wZXY8H1ed.net
>>784
FAQを読め

809:はちみつ餃子
25/04/21 05:54:01.88 jNnWMUsR0.net
>>786
これのこと?
URLリンク(c-faq.com)
そういのを好む人もいるとだけ書かれていて、理由の説明はない。

810:デフォルトの名無しさん
25/04/21 09:56:56.17 i498vk5cp.net
#define TRUE (0==0)
#define FALSE !TRUE
この書き方はまだ世の中がBASICでソフト組んでた頃に見たわ
たぶんそれ以前のどこか別の言語からの輸入なんだとは思うが
かっこいいから好んで使ってる

811:デフォルトの名無しさん
25/04/21 09:58:55.59 JjvQDxsX0.net
まあ、まだtrueが0以外って仕様だった頃に、より処理系に沿った正確な値が欲しかったんだ

812:はちみつ餃子
25/04/21 11:43:45.70 ++xqwTI40.net
>>789
PDP-11 時代の C のリファレンスマニュアルを見つけることが出来た。
URLリンク(web.archive.org)
1975 年頃のもので、このときすでに比較演算子や等価演算子は 1 か 0 を返すことになっている。
たぶん最初からそうだったと思う。
C の基礎になった B の時点で既にこのような仕様なので。

ただ、全ての処理系が完璧に同じ仕様に沿っていたわけでもないだろうし、当時の事情の中で有用なテクニックだった可能性はあるかもしれない。

813:デフォルトの名無しさん
25/04/21 12:00:52.53 QKqUxhO90.net
いまでも「0は偽」という仕様しか謳われてないように見えるがどうだろう

むしろ「偽は0」という仕様が消えているようにも思えるが、どうだったっけ

814:はちみつ餃子
25/04/21 12:43:19.49 ++xqwTI40.net
>>791
_Bool は整数型 (標準符号無し整数型) に分類されている。
整数型は他の整数型に変換したときに変換後の型で表せる範囲であるなら同じ値になるルールなので _Bool 型の 0 は 0 だよ。

815:デフォルトの名無しさん (ワッチョイ f9ac-0INX)
25/04/21 12:51:37.31 NLKNLeTR0.net
関数の戻り値だと、
0は正常終了、非0は異常終了
というのが多かったと思う

816:
25/04/21 13:16:11.04 3FvSqisv0.net
論理型のある言語でも
If b = True Then
なんて書かれるとモゾモゾしてしまう

817:デフォルトの名無しさん
25/04/21 13:36:06.07 0RekbFS70.net
false=0,true=1に決めたとしても、いにしえのboolがint型な影響で行儀の悪い関数から2とか-999999999を返せてしまって
1以外のtrueで意図しない分岐になる恐れがあるから、ifの条件は0か非0かで判断しましょうというバッドノウハウ的なルールになったようだ

818:デフォルトの名無しさん
25/04/21 13:51:07.27 0RekbFS70.net
BOOLの定義にさらに混乱に拍車をかけたのがWindowsAPIのGetMessage()で、戻り値の型をBOOLとしておきながら
実際には0、0以外、-1を返すというBOOLの概念が揺らぐような凶悪な仕様でif文に対し疑心暗鬼になったプログラマーが発生した

URLリンク(learn.microsoft.com)

819:デフォルトの名無しさん
25/04/28 20:12:17.56 LzrB3b/O0.net
初心者です
vcのCL.EXEにパスを通したいのですがどれに通せばいいかわかりません。
86フォルダと64フォルダにそれぞれさらにフォルダが二つあって合計で4つCL。EXEが4っつあります。
86と64は32ビットと64ビットの違いかと思うのですが、64のフォルダにも二つあるのでわかりません

820:デフォルトの名無しさん
25/04/28 20:13:33.98 LzrB3b/O0.net
>>797
CL。EXE

CL.EXEの間違え

821:はちみつ餃子
25/04/28 20:19:59.93 clGXfLYj0.net
>>797
vcvarsall.bat にパラメータを渡して実行するか各アーキテクチャ向けバッチファイルを実行することで必要な環境変数の設定がされる仕組みになっている。
URLリンク(learn.microsoft.com)
これらのバッチファイルを経由せずに直接環境を設定するのはやめたほうが良い。

バッチファイルの具体的な内容は各環境によって (インストール時の条件などによってかな?) 違うので他環境でインストールしたバッチファイルを持ってくるなと注意書きがある。

822:デフォルトの名無しさん
25/04/28 20:39:54.03 LzrB3b/O0.net
>>799
自分で直接やらない方がいいのですね
はって頂いたページを見ましたが初心者には難しいですね
でもこちらに載ってあるBATファイルで設定するのがいいのですね
ありがとうございます

823:はちみつ餃子
25/04/28 20:54:09.97 clGXfLYj0.net
>>800
私自身は今は使ってないからあまり把握してないのだけれど、普通にインストールしたらそのバッチファイルがスタートアップメニューに登録


824:されなかったっけ?



825:デフォルトの名無しさん
25/04/28 21:29:48.61 es1rmYMQ0.net
>>801
探してみたのですが見つかりませんでした。
PC買い替えたので改めて環境設定しているのです。
もう一度インストールし直すとあるかもしれませんね。
私が消してしまった可能性もなくはないので

826:デフォルトの名無しさん
25/04/28 21:32:36.04 PCWkr5M/0.net
自分でPATHを通してみろ。っていう実習だとしたら。
たとえば、Hostx64の中のx86は、x64上でclを実行して、出てくるバイナリはx86用ってこと

「そうやって覚える」のもアリだが、vcvarsall を使いこなすこともぜひ覚えよう

827:デフォルトの名無しさん
25/04/28 21:45:04.99 x+drcUbt0.net
パスだけ通しても環境変数設定しないとincludeファイルが見つからないとか色々言われそう

828:デフォルトの名無しさん
25/04/28 22:03:09.10 ALNkeUhz0.net
cl.exeの質問したものです
あらためてインストールしたらスタートメニューにコマンドプロンプトがでてきました。
以前使っていたやつと同じのなのでcl.exeが実行できます。
みなさん親切にありがとうございました!!

829:デフォルトの名無しさん (スフッ Sdbf-6bHF)
25/04/29 05:05:37.13 YS1K5N/ud.net
>>805 Windows環境だと俺はまだ、command prompt for developerを使わないとcl.exeを実行できない。すごいなぁ

830:デフォルトの名無しさん
25/04/29 09:10:59.69 zaEbcMdv0.net
Windows は難し過ぎ。

831:デフォルトの名無しさん (アウアウウー Sa1b-Dl8r)
25/04/29 12:55:09.96 TmvDscRda.net
Nim入れたら勝手にcl実行出来るようになってた気がする

832:デフォルトの名無しさん
25/04/30 19:36:25.43 IchQwRQ5H.net
Windowsでコマンドプロンプトを使ってのC言語って、
VCにしてもMingWとかにしても、
どうにもイマイチよな

なんならDOS時代のBorland Cとかの方が
IDEとの相互運用性があった気もするが

まあ、きょうびプログラミングといえばもうLinux一択ですしねえ

833:デフォルトの名無しさん
25/04/30 20:41:49.51 SXWYOndw0.net
ゲーム開発とかWindowsだろ
Linux一択ってお前狭い世界しか知らないだけだぞ

834:デフォルトの名無しさん
25/04/30 20:47:22.61 KuvXDJPY0.net
狭いWindowsの世界から飛び出そう

835:デフォルトの名無しさん
25/05/01 03:44:24.96 xFwps2mR0.net
Windows一択とは言ってないね
その論理思考能力でプログラミングやってて大丈夫?

836:デフォルトの名無しさん
25/05/01 10:14:05.05 nTiKCI2Ra.net
>>809
*nix系のcmakeとWindowsのCMakeは別物だったと思うけど
VSはプロジェクトからmakefileを造ることは可能だったはず
メリットがあるかどうかは知らん

837:デフォルトの名無しさん
25/05/01 13:40:32.60 pf/ZHGigd.net
VCって、C言語にとてもよく似た、ともすればほぼ同じ文法でソースを書ける、
何かのフレームワーク用の開発環境だよね

838:デフォルトの名無しさん
25/05/01 14:35:25.46 nTiKCI2Ra.net
MFCのことか

839:デフォルトの名無しさん
25/05/01 20:39:23.67 ZetavPXj0.net
>>813
nmakeがmakeと別物であってcmakeはWindowsでも一緒だろ

840:デフォルトの名無しさん
25/05/03 00:28:21.78 HHJZofaV0.net
錆び付いたC言語で今を打ち抜こう

841:デフォルトの名無しさん
25/05/03 07:50:52.82 v3weHkV10.net
>>817
何を使用して?

842:デフォルトの名無しさん (ワッチョイ bf5f-8SS3)
25/05/03 10:18:34.76 sPbW4KAD0.net
>>818
投げ捨てられたautoconf

843:デフォルトの名無しさん
25/05/03 16:53:00.85 ZpfRANr50.net
>>817-819
良い歌詞だね
曲付けてもらえば?

844:デフォルトの名無しさん
25/05/03 18:56:34.42 Q4RX0Sa/0.net
スマホとPCの作業を効率化したい--「Copilot Vision」の便利な8つの活用例
2025-05-03 07:00
URLリンク(japan.zdnet.com)


1 プログらまーまこれを改造してるので上記以外の状態でも使用できるようにしている

2 すでにプログラムがあるので1~コードを作成する必要が無い

ボイス・トォ・スカルの本態が一般パソコンにまで来たのでつい買い捨てができるようになった
マネーロンダリング 談合 インサイダー などがはかどるといわれる

845:デフォルトの名無しさん
25/05/03 18:58:42.72 AGoX3tlE0.net
タイトルは青春の蹉跌あたりで

846:デフォルトの名無しさん
25/05/05 08:50:37.13 3AfvJi9A0.net
“イリヤ神”がまたやった 動画生成AI「FramePack」が革命的なワケ
2025年05月05日 07時00分更新
URLリンク(ascii.jp)
 4月17日に登場した動画生成AIプログラム「FramePack(フレームパック)」が世界的に衝撃を与えています。PCロ


847:ーカル環境で動画AIを動かすには、少なくともビデオメモリー(VRAM)が12GBあるビデオカードを搭載していないと難しいというのが常識でした。ところが、VRAM 6GBでも安定的に動作させられるため、一気に動画AIの裾野を広げそうです。開発したのは、画像生成AI分野で「ControlNet」や、使いやすいツール「Fooocus」などを開発してきたことで知られる、スタンフォード大学に在籍中のIllyasviel(イリヤスフィール、以下イリヤ)さん。既存の方法論にまったく違ったアプローチでブレイクスルーを引き起こす、“イリヤ神”のアプローチに再び注目が集まっています。 中略  AI動画を作ってみたいけれども、スペックが足りないために諦めていたという人が次々に自前の環境で試すようになってきました。既にワンパッケージでインストールできる環境も整えられているため、スタートも簡単です。様々なファイルをダウンロードしてくるため、初期設定は2時間くらいは見ておく必要があるものの、圧倒的にハードルが下がりました。



848:デフォルトの名無しさん
25/05/05 16:26:03.24 gTSTkGJ70.net
>>823
オンボのグラフィックスでも動きますか?
メインメモリは24GBです

849:デフォルトの名無しさん
25/05/07 15:22:05.67 Nuqzm3Wk0.net
下記は全て2025年5月7日の記事

OpenAI、ChatGPTの6つのモデルの違いと適切なプロンプトを解説
URLリンク(news.mynavi.jp)

Microsoftの新規のソースコードの約3割をAIが生成、Nadella氏が明かす
URLリンク(news.mynavi.jp)

スコットランドの住民を悩ます謎の怪音「ヘブリディアン・ハム」の正体はいまだ不明
URLリンク(karapaia.com)

850:デフォルトの名無しさん
25/05/07 15:47:16.05 n3ae2haO0.net
怪音をお尻から出してる奴、正直に名乗り出なさい

851:デフォルトの名無しさん
25/05/08 08:38:35.44 KCA9Lwh4d.net
WSLでdebianを使っているけど、動作が軽いし便利だよね vscodeの起動も早い

852:デフォルトの名無しさん
25/05/09 07:07:15.84 +l+evNW70.net
もう見抜けない、最先端のAIディープフェイク動画は心臓の鼓動まで再現、判別が困難に
2025-05-08
URLリンク(karapaia.com)

853:デフォルトの名無しさん
25/05/09 13:25:09.01 3M4tliEX0.net
天国は良い所か聞けばわかるよ

854:デフォルトの名無しさん
25/05/09 19:22:34.32 rWwF6jNu0.net
帰って来たヨッパライか。

855:デフォルトの名無しさん
25/05/09 22:19:38.30 toYOiewu0.net
>>719
なんこれCプログラマなのに初めてみたは…
WGのサイトは見ててあそこが公式と思ってた
最近出来たんか

856:デフォルトの名無しさん
25/05/09 22:21:43.53 toYOiewu0.net
公式ホームページ(半世紀遅れ)
良いドメイン取れてよかったね

857:デフォルトの名無しさん
25/05/10 14:39:03.43 17EyeKMh0.net
>>826
はい。

858:デフォルトの名無しさん
25/05/24 20:58:15.38 aQkh9jD40.net
初心者一名様ご案内、興味あれば以下よろしく。
スレリンク(tech板:10番)-

概略:
PHPでoniguruma(正規表現ライブラリ)最新版の機能を使いたい為、
(文法含めて)C言語の知識がまるでないのに環境構築してコンパイルし、
コードの問題(未改修箇所)も見つけて動かしてしまった剛の者(ただしかなりラッキーパンチ)
とはいえGitHub上で活発にやりとりしてるし、ポテンシャルは高い
PHPとPythonは使えるらしい

すまんが俺自身は他人に教える事自体には興味ない
俺は「他人のコードを読む経験が不足している」と自認しており、
それなりの品質が期待されるコード(=有名なOSS)は機会を見つけて読む事にしていて、
今回もonigurumaのコードを読む機会として便乗しただけ
だからお前らが同様の事をやるなら便乗してもいい

俺の文法/規格の知識は完全にお前ら以下で、よく「それC++」と言われてる連中と同程度
(俺はCとC++を分離出来てないし、C++コンパイラで通る範囲のCしか使ってない)
俺はお前らがやってる重箱の隅的問題には興味なく、もっと大局の、
「この仕様/機能を実現する為、どういうコード戦略で記述するか」に興味がある
(数行のコード内での詳細文法ではなく、数万行のコードをどう構成するかに興味ある)
最近気に入ってる言語はJS

859:デフォルトの名無しさん (ワッチョイ 1f35-rwyI)
25/05/25 19:39:48.52 OO+eY7q40.net

キモ

860:デフォルトの名無しさん
25/05/27 14:54:10.14 qQFXqwqXd.net
カッコ書きを多用してるから多分ADHDなんだろう
ここでも他に時々見かけるけどまあそっとしといてやれ

861:デフォルトの名無しさん
25/05/27 15:25:06.34 K50j2XjJ0.net
星たちは「音」を奏でていた。楽器のように。歌のように
5/26(月) 19:00配信
URLリンク(news.yahoo.co.jp)

量子世界では鏡の中心で本物と鏡像が溶け合う観測不能ゾーンが発生する
2025.05.26 MON
URLリンク(nazology.kusuguru.co.jp)

1キロ先から「幅3ミリの文字」が読めるレーザーを開発!
2025.05.26 20:00:48 MONDAY
URLリンク(nazology.kusuguru.co.jp)

862:デフォルトの名無しさん
25/05/28 08:34:27.62 d5fn07f20.net
【悲報】財務省、廃棄したはずの森友文書を別の開示請求でうっかり開示してしまう🥺 [928380653]
2025/05/25(日) 14:40:21.21
スレリンク(news板)

第三者委員会「エロ小説漏洩は斎藤知事の指示の可能性が高い」 [595582602]
2025/05/27(火) 14:50:41.31
スレリンク(news板)

元総務部長が裏切り「斎藤知事に指示されてやった」 斎藤兵庫オワコン逮捕😭 [659060378]
2025/05/27(火) 23:30:03.48
スレリンク(news板)

立花孝志 業務上横領の疑いで刑事告訴 警視庁が受理(画像あり) [659060378]
2025/05/27(火) 21:37:55.62
スレリンク(news板)

863:デフォルトの名無しさん
25/05/28 10:43:48.21 U7MV9uLa0.net
おれもHDMIでDVIだよ

864:デフォルトの名無しさん
25/05/28 20:10:39.46 EIair+pr0.net
【兵庫】「知事・元副知事の指示に基づき正当業務を…」斎藤知事の“側近”井ノ本氏の弁明書 知事は改めて否定 [ぐれ★]
2025/05/28(水) 17:08:14.82
スレリンク(newsplus板)
※追い詰められてないか?

865:デフォルトの名無しさん
25/05/28 21:43:45.39 PBslL45A0.net
スレに関係無いもん貼るなよ

866:デフォルトの名無しさん
25/05/30 13:31:01.21 XWQpoVmBa.net
もうプログラマー寄り付かなくなってるんじゃまいか

867:デフォルトの名無しさん
25/06/23 13:59:19.19 gexPgDcc0.net
C言語の終焉か

868:デフォルトの名無しさん
25/06/23 14:32:37.67 gJ1K/dLq0.net
プログラマーの終焉

869:デフォルトの名無しさん
25/06/23 15:24:01.44 Le9JOtTU0.net
C は終焉の C

870:デフォルトの名無しさん
25/06/24 09:50:49.50 17zM306Da.net
文部科学省が標準のローマ字表記を改めるんだってよ

871:デフォルトの名無しさん
25/06/28 16:40:01.58 uH6ba5rfM.net
しょぼい機器でも物凄い性能だから、C言語を使う必要もなくなっている。

872:デフォルトの名無しさん
25/06/28 16:47:05.13 WGUfZy3xp.net
もはやjavascriptすら動くからなぁw

873:デフォルトの名無しさん
25/06/28 21:00:47.99 HZiRGN/SM.net
ただまあ、バイト単位で処理したい時には JS や Python や Java や Ruby
より便利だけどな。

874:デフォルトの名無しさん
25/06/28 21:01:32.93 HZiRGN/SM.net
あと、文字コードだとかを勝手に変換しないというのも便利だな。

875:デフォルトの名無しさん
25/06/30 06:22:37.34 m9Iz5ero0.net
結局、自作したいだけかよw

876:デフォルトの名無しさん
25/06/30 11:37:57.93 YZeS8CxH0.net
外食に飽きると自炊を始めるものだよ

877:デフォルトの名無しさん
25/06/30 12:00:43.86 rn9gnazy0.net
そろそろc談義したいぞ…

878:デフォルトの名無しさん
25/06/30 13:32:07.78 Bi14XNYeM.net
C/C++は、(レンタル)サーバーサイドでも、ソースコードを盗まれないというメリットがある。

879:デフォルトの名無しさん
25/06/30 13:49:28.37 Bi14XNYeM.net
PHPは一見便利なように見えても、何をやっているのか不安が残る部分がある :
・文字コードの扱い。勝手に変換される可能性。それが脆弱性の原因になる可能性がある。
・SessionID の管理のされ方。それがブラックボックスで余り説明が無いので危険。
・文字列が「長さ指定文字列」と「0終端文字列」との二種類あり、デフォルトは前者だが、
正規表現系は後者である場合があり、それを知らないと脆弱性の原因になる。

880:デフォルトの名無しさん
25/06/30 18:59:51.22 YQWckD/50.net
最近はFPGAでコンピュータ作ってるけどメモリが4kbytesとかしかないのでC言語があると助かります。

881:デフォルトの名無しさん
25/06/30 20:50:19.20 YZeS8CxH0.net
アセンブラ使え

882:デフォルトの名無しさん
25/06/30 20:56:51.68 i+8hTHYI0.net
そこまでのキツい環境ならC使わずにアセンブラ使えって思う

883:はちみつ餃子
25/06/30 20:57:51.84 bv4WQiut0.net
その規模なら C で書くにしても配慮すべき低レイヤの事情がありすぎてあまり C の甲斐がなさそうだと私も思う。

884:デフォルトの名無しさん
25/07/01 02:30:13.65 LkiphQyhM.net
PHPの文字列は、1つの文字列の中でも、文字によってバイト数が異なるそうだ。
だから、$str[$k] の $k は、文字単位ではなくバイト単位。
文字単位で指定したい場合には、
mb_substr($str, $k, 1, "UTF-8")
とするとのこと。
文字列の終端には一応 0x00 が入っているが、文字の長さはバイト数で管理されており、0を
終端とはみなしていない。だから、文字コードが 0x00 の文字も文字列の中に含めることが可能。
$str = "こんにちは";
echo strlen($str); // バイト数(UTF-8なら15)
echo mb_strlen($str); // 文字数(5文字)

ところが、正規表現を扱う場合には、0x00 のバイトが含まれていると、文字列の終端と
みなされることがある。だから、ユーザーによって入力された文字列を正規表現で
安全チェックを


885:したつもりでも、文字列の途中に 0x00 のバイトが含まれていて、 それ以後に危険なコードをが含まれている倍がある。 C言語で作っていれば子の様な齟齬は起きない。



886:デフォルトの名無しさん
25/07/01 05:48:42.66 M5z4vIa80.net
>>860
× > PHPの文字列は
○ unicodeは

× > C言語で作っていれば
○ asciiに限定すれば

お前は基本的なところがまるで理解出来てない
そもそも文字コードの話なのだから、どの言語でも同じ
特定の言語を使用すると回避出来るとかいう話にはなり得ない

887:デフォルトの名無しさん
25/07/01 06:18:52.12 M5z4vIa80.net
と思ったが、もしかして最近の言語はutf-8をネイティブサポートしていて、(=内部文字列がutf-8)
この辺を全部自動的に回避出来るのか?(=プログラマに文字コードの知識が全く必要ない)

Cはutf以前だから勿論サポート無し
PHPはWeb言語だから文字列=バイトストリーム扱いで、共用体が駆使されるネット向けになってるだけ
JSはutf-16だったがサロゲートペア導入でAPIが2つある(サロゲートペア対応版と非対応版)
Rustは知らんが、さらっと調べた限りutf-8で、逆にインデックスアクセスが出来ないらしい(3文字目を[3]で取得出来ない)
ただこれだと遅くなるだけなので、Cを駆逐したいと言いながら便利さを追求してるRustは迷走してる

Pythonは、どうやら全自動で出来るみたいね…

888:デフォルトの名無しさん
25/07/01 08:38:13.77 WjfKubzqM.net
>>861
859は別に間違ったこと言ってないでしょ
そこまで上から目線で言いたいならunicodeは書記素クラスタで考えないといけないので可変、ぐらい言わないとね
コードポイントならUTF-32は4バイト固定だし
むしろc言語はasciiという言い方は複数の意味でおかしい

889:デフォルトの名無しさん
25/07/01 09:47:54.97 M5z4vIa80.net
>>863
俺は859は根本的に勘違いしてる(≒間違っている)という見方を今も変えてないが、
少なくとも862の方が詳しいようだから(859の相手は)お前に任せるわ。

俺より詳しい奴が居る場所で俺が説法する意味もなく、
馬鹿と初心者が無限に沸くネットで間違いを全部指摘して回るのは無理だし。
下から目線のゆとりZ様同士でよろしくやってくれ。
どのみち俺とお前らではどうやっても合わないのはこれまでも散々経験してきた事だ。

890:デフォルトの名無しさん
25/07/01 09:48:28.12 M5z4vIa80.net
とはいえ一応内容について触れておくと、
> 書記素クラスタ
重ね文字等の事は知ってるぞ。ただ俺はこれは仕様が決まってないかと思っていたのだが、一応あるんだな。
URLリンク(unicode.org)
ただこれ、問題は"Unicode 16.0.0"と、バージョンがやたら高い事にあると思う。
自然言語が既に16回も改訂してるわけはないので、中途半端な仕様を決め、改訂しまくってるという事だから。
今の仕様で実装しても、出来上がる頃には仕様が改訂されている事もあり得る。

> コードポイントならUTF-32は4バイト固定だし
当然これも知ってるが、現実的にutf-32を使う事はほぼあり得ないだろ。
文字列処理は結局の所速度/メモリ重視だから、utf-32ではコードは書きやすいかもだが使い物にならない。

つかこの辺859に言ったところで通じるわけもなく、マウントが目的になってるのはお前の方だ。
だからこそ「上から目線」に過度に敏感なのがゆとりZの傾向でもあるが。

> むしろc言語はasciiという言い方は複数の意味でおかしい
話を続ける気があるなら、何の事なのかもう少し具体的に言え。


まあ一言ずつに纏めると、

859: PHPは文字の扱いに色々問題があるが、C言語にはない
860: お前は根本的に間違ってるから、文字コードについて勉強し直せ ← 859に通じる範囲で返事してる
862: 俺の方が詳しいのに上から目線ウゼエ ← マウントを取り返しただけで、859に通じるようには書いてない

ここら辺がゆとりZがコミュ障な所だ。
まあそれでもお互いにやるのは自由、よろしくやってくれ。
俺は降りる。

891:デフォルトの名無しさん
25/07/01 10:03:19.08 0aieN+8C0.net
普通に何も考えずに使ってて問題起きないならstrlen以外にもmbslenとかwcslenみたいなのを用意されることはないんだよな

892:デフォルトの名無しさん
25/07/01 10:07:53.62 O7C1rCRT0.net
ああついでに言っておくと、

ゆとり以前(=俺):内容が正しければ態度なんてどうでもいい

ゆとりZ:ボクがどんなにマヌケな間違いをしていたとしても、
 優しく丁寧に教えてくれる事が絶対条件で、
 優しければ内容が多少間違っていても許容される(←いやこれは俺は許容出来ねえ)

という違いだな。まあゆとりZ同士でよろしくやってくれ。
ただまあ、Qiitaのスレとかチラ見してるが、
発言の自由がある=どんな馬鹿でも発言出来る=間違った情報も当然発信される、なのだから、
Qiitaに正確性を求めるのは仕様的に無理なので、連中も間違ってて、
Qiitaは玉石混淆な上で、石が大量生産されるのは仕様として甘受し、玉を探すべきだとは思うがな。
とはいえQiitaが石→玉化する機構を持ち合わせられない(=間違いを指摘する事すら出来ない)
のは上記ゆとりZ価値観の賜だから、詰んではいるが、それでも(Qiitaというサイトが)無いよりは断然いいし。

つまりだな、お前らゆとりZは「上から目線ガー」とか一々やってるから駄目なのであって、
「相手」(今回は859)に向き合う気がないから、
Qiita等の「一方的に発信するだけ」のツールは断然相性がいいが、
そこで「双方向な議論」とかはまるで出来ないんだと思うぜ。
859にとって困るのは、「上から目線」ではなく、「間違いを指摘してもらえない」事だろ。
(ただこれがゆとりZに取っては違うらしいので俺にはどうにも合わないが)

893:デフォルトの名無しさん
25/07/01 10:57:25.82 M5z4vIa80.net
リンクは以下の方がよかったかも
URLリンク(hydrocul.github.io)

> Grapheme cluster の境界定義
> CR の次に LF が続く箇所は境界にならない
これだとCRLFは一文字扱いだから、utf-8の0x7f以下だけ使っても(厳密には)asciiとは違うって事か?
なんで一々仕様を無駄に変更するのだ?という気はするが、
見てる限りunicodeって自然言語学者が策定してる仕様で、プログラミングのし易さなんてまるで考慮して無いな

894:デフォルトの名無しさん
25/07/01 16:58:38.98 W1sziXWKM.net
PHPに限らず、文字コードを勝手にいじくる言語は脆弱性の温床になる。
C言語は指示しない限りは何もしないから、むしろ安全。
860は、馬鹿だから理解できない。

895:デフォルトの名無しさん
25/07/01 17:04:55.37 W1sziXWKM.net
中途半端に自動化しようとしていることが脆弱性の温床になる。
詳細な仕様を書かないで「こういう場合にはこうすれば安全ですよ」
みたいなのが結構危ない。
なぜ、そうするのか。その関数は厳密に何を行っているのか。
「簡易言語」には、そういう情報が欠落していることが多い。

896:デフォルトの名無しさん
25/07/01 17:07:29.61 W1sziXWKM.net
フレームワークも危険だ。
「完成品」として何もカスタマイズしないで使っているなら、安全かもしれない。
ところが、「プラグイン」と呼ばれているものを組み合わせたり、
独自にカスタマイズしようとすると、とたんに危険になる。
なぜなら、仕組みが分かりにくく、ソースが巨大で解読しにくいことが多いからだ。
特に問題なのはオープンソースのフレームワークだ。
ソースが汚いものが多いから、それが原因で理解が難しくなり、脆弱性が入り込む。

897:デフォルトの名無しさん
25/07/01 17:10:17.61 W1sziXWKM.net
860は、物事の理解が甘い。
自分が馬鹿なことに気付いてない。
5chだけで偉そうにしている馬鹿。

898:デフォルトの名無しさん
25/07/01 17:12:20.54 rc7NgUjs0.net
自己紹介ですか?

899:デフォルトの名無しさん
25/07/01 17:15:03.47 W1sziXWKM.net
>>873
おまえは、自覚が無い馬鹿だ。

900:デフォルトの名無しさん
25/07/01 17:41:41.27 0aieN+8C0.net
全然違う話になったぞ???

901:デフォルトの名無しさん
25/07/01 19:57:14.17 4pZHV5xo0.net
けどさ
今のWindowsって内部的にはUTF16LEなんだよな
それをアプリ側に合わせてマルチバイトに変換したりしてるわけで

902:デフォルトの名無しさん
25/07/01 20:03:31.00 M5z4vIa80.net
>>875
まあ859もゆとりZだったというオチだよ。
見えてた展開ではあったが、放置するのも問題かと思って最低限のツッコミを860でしたつもりだったが、
ゆとりZが釣れまくってどうにもならねえ。脱線しすぎ。

5chにはコミュ障が多いのでついでに解説しとくと、
859のテイ、何だかよく分からん独り言は、ゆとりZ特有のムーブで、
・質問して答えてもらえないと傷つくし、
・議論提起してボコられたら嫌だし、
・何だかよく分からん独り言にしとけば、どういう展開になっても逃げられるし!!!
って事で、傷つかない為に予防線張りまくりの戦術、連中なりの「コミュ上手」な手法らしい。
いやいや、お前ら一々メンドクセエわ。

903:デフォルトの名無しさん
25/07/01 20:04:09.01 M5z4vIa80.net
>>869
> 860は、馬鹿だから理解できない。
お前がどう思おうと自由だが、さすがに俺よりお前の方が賢いと思う奴は居ないと思うぞ。
まあこれも862と同様のゆとりZ特有ムーブで、「ばかにされた!!!」事が内容に勝ってる。
いやいや、お前がそもそもマヌケな事を言わなければ防げた展開だろ、とはならない。

> PHPに限らず、文字コードを勝手にいじくる言語は脆弱性の温床になる。
> 特に問題なのはオープンソースのフレームワークだ
少なくとも今のお前より理解してる連中が作ってるから、
今のお前の知識と知能で作った物よりは安全だろうよ。

ついでに言うとこれもゆとりZの特徴で、
心根で他人を見下してるからこんな発言になるし、また、
心根で他人に対してマウントを取りたい、上から目線で話したい、と思ってて、でも我慢してるからこそ、「上から目線」に過敏になる。
オープンソースにゴミが多いのも事実としても、
同じ物を作るのはかなり大変なのも、結果的に生き残ってる物はそれなりに鍛えられた品質なのも事実。
各言語処理系なんて相当の人数が関わって改善された結果だから、同等以上の品質の物を作るのは事実上無理だと思うけど。
ゆとりZは「謎の心根の『上から目線』」がありすぎ。
それでいて「表面的な『上から目線』」にゼロトレランスなのはちゃんちゃらおかしいのだが、まあ連中はここら辺を矛盾に感じないらしい。
連中は表面的なコミュニケーションしか出来てないってのがこの辺から分かる。

904:デフォルトの名無しさん
25/07/01 20:14:50.32 O7C1rCRT0.net
>>876
それは正しいよ。
サロゲートペア以前はutf-16が各国文字を固定長で扱える(多分)唯一のエンコードだったから、
ローカライズ前提のwindowsの内部コードをutf-16で作るのは正しい。

逆に言えば、サロゲートペア以前はutf-32なんて使う意味なく、実際使われてもなかったはず。
今固定長に拘るならutf-32しかないけど、Rustがutf-8を選択したのは、utf-32は使い物にならないという判断のはず。
(まあゆとりZなら「俺の判断の方が正しい」となるのだろうが、
俺の心根はそこまで「上から目線」ではないので、Rust陣営の判断はそれなりに尊重する。
なおRust信者は死ねと常々思っているが、それとこれとは別の話)

905:デフォルトの名無しさん
25/07/01 20:20:08.26 4pZHV5xo0.net
そうではなく
OSレベルで自動変換が行われているのに
言語レベルの自動変換に文句言うのもなんだなぁと
そういう話

906:デフォルトの名無しさん
25/07/01 20:35:01.95 M5z4vIa80.net
>>880
その意味なら、OSレベルの自動変換はされてないぞ。

例えば、SJISファイルはSJISファイルとして保存されてるだろ。
Windowsに保存する限りあらゆるファイルが自動的にutf-16にされ、
もう二度と各ファイルのエンコードを気にする必要がないのなら、大半の人はこの方が助かるとは思うが。(俺もこれでいい)
同様に、.NETでファイルストリームを開いたら、あらゆるエンコードが自動的にutf-16になって見える、って事もないだろ。
(APIチラ見する限り、Text.Encodingがあるから手動で切り換えのはず)

ただこれを目指した物がBOMなのだろうけど、上手く機能してるとは思えないね。

907:デフォルトの名無しさん
25/07/01 20:40:05.31 4pZHV5xo0.net
sjisファイルを読み込んでメモ帳で表示させる場合、内部のレンダリングエンジンとかはutf16に変換されたものじゃねえの?
それをまたsjisで保存する際には変換されてる

908:デフォルトの名無しさん
25/07/01 20:41:51.49 4pZHV5xo0.net
winapiのA系もutf16に変換されてる表示されているんじゃないの?

909:はちみつ餃子
25/07/01 20:42:58.47 4QEmYdel0.net
>>881
A 付きの API は OS が変換するよ。
ファイルの読み書きもロケールの設定によっては変換する。
わかりやすく観測しやすい例としてはファイル名は変換してる。
そもそも NTFS の規格からしてファイル名は Unicode が前提だし。

910:デフォルトの名無しさん
25/07/01 20:43:09.72 M5z4vIa80.net
>>880
あ、ちなみにコピペなら、あれはアプリ側がやってるらしいぞ。

例えばメモ帳でSJISファイル開いて、Ctrl-C、その後utf-8の別アプリ(メモ帳でもいい)でCtrl-Vしたとき、
正しくコピペされる(=文字化けしない)が、これはアプリが対応してるかららしい。
ソースは、以前、対応してないアプリがあって、コピペが上手く機能しなかったとき、
「Windowsのメモ帳ですら対応してるのに、なんだこの糞アプリはッ!!!とブチ切れてた奴を見たから。
OSがやってくれてるのならこうはならない。

911:デフォルトの名無しさん
25/07/01 20:56:30.50 M5z4vIa80.net
>>883-884
確認した。
AとWがあり、Aは自動変換してくれるようね。
Win32APIだから、「OSが自動変換してくれる」と表現するのも正しいね。

>>880
上記で了解した。

912:デフォルトの名無しさん
25/07/01 22:22:40.31 0+2Ys+XXM.net
>>878
的外れなことばかり言ってんじゃないぞ、大馬鹿ものめ!
馬鹿はC言語スレに来るな!

913:デフォルトの名無しさん
25/07/02 04:17:04.40 ZRfP3NsY0.net
phpやアプリで入力された文字をwebアプリで扱う話
なのか
メモ帳みたいにwindows固有のShift_Sisでの文字の処理の話
なのか

914:デフォルトの名無しさん
25/07/02 05:01:21.76 kZMPfHAD0.net
文字コードとプログラミング言語の区別が付いてないゆとりZが、
「ぼくのさいこうのせきゅりてぃ!!!」を語って馬鹿にされただけの話


ついでに考えてみたが、Windowsの場合はファイル読み込み時に変換かけ、
CLR上のStringも、C#のStringも、またWindows上のStringも、全てutf-16、という美しい世界なのだろうが、
これだと同様にクリップボード上のテキストもutf-16だと思われ、文字化けする理由が分からん
(俺が遭遇した物はエンコーディングによってコピペが出来たり出来なかったりしてた《ように見えた》)

なおWin10以降はutf-8を目指しているのかも?
URLリンク(www.momopoem.com)



とはいえ、Cの話ではないな
unicodeスレでやれってこった
(あるのかは知らんが、スレがあってもおかしくない程度にはunicodeは複雑)

915:デフォルトの名無しさん
25/07/02 06:16:59.91 5Jo8M0S90.net
内部表現がUTF16LEであって、表面上はシステムで設定した文字コードってだけの話だよ
日本語環境だとデフォルトS-JISだったのをWindows10の途中からutf-8にした(ユーザ側で変更は可能)
メモ帳もデフォルトがutf-8になった

クリップボード上のテキストはアプリケーションがクリップボードにデータを預ける
その預けるデータ形式に読み取り側が対応していないと機能しないと言うだけ
シンプルなテキスト形式ならCF_TEXTがANSIでCF_UNICODETEXTがUTF16LEになる
CF_TEXTにしか対応していないか、両方対応しているけどANSI優先させてしまっている場合(ないと思うが)になら環境依存文字が文字化けすることもある

916:デフォルトの名無しさん
25/07/02 08:07:25.64 c2tqUwxf0.net
わからんことはもうAIに聞いたら教えてくれるのに

917:デフォルトの名無しさん
25/07/02 08:13:07.97 pWg0Xl5Z0.net
>>890
了解した。

API見る限り、一つのクリップボードに複数のデータ形式を登録でき、しかも自動変換まで行ってくれるのだから、
CF_UNICODETEXTだけ対応しておけば文字化けはほぼ無くなるので、彼が糞アプリ具合にキレたのも分かった。
> システムは、特定のクリップボード形式間でデータを暗黙的に変換します。
> ウィンドウがクリップボードにない形式でデータを要求した場合、システムは使用可能な形式を要求された形式に変換します。
> URLリンク(learn.microsoft.com)
> クリップボードの形式 変換形式
> (中略)
> CF_TEXT CF_UNICODETEXT
> (中略)
> CF_UNICODETEXT CF_TEXT

918:デフォルトの名無しさん
25/07/02 09:02:06.13 kZMPfHAD0.net
ちな、unicodeスレ

文字コード総合スレ part15
スレリンク(tech板)

919:デフォルトの名無しさん
25/07/06 09:24:52.33 jyZjYPic0.net
>>862
python(リファレンス実装、すなわちcpython)の文字列内部表現は全部UTF-32だよ
やはり(概ね)固定長がプログラムで処理しやすい
外部的にはutf-8を吐くけど

920:デフォルトの名無しさん
25/07/06 11:52:20.38 v3CN8ECgp.net
英語圏から見たら一文字に32bitも使うなんて勿体無いと思う

921:デフォルトの名無しさん
25/07/06 12:26:15.50 WJe1asKY0.net
emoji全盛なので英語圏は~という見方は時代遅れ

922:デフォルトの名無しさん
25/07/06 13:29:05.42 OCq4/vpt0.net
アスキーコードは0の¥0から127のDELまでしか使ってないのだから絵文字も1バイト内に収められそう

923:デフォルトの名無しさん
25/07/06 13:49:41.25 WoCgxATG0.net
128からは北欧やロシア特有の文字で埋められているからなぁ

924:デフォルトの名無しさん
25/07/06 14:21:04.82 Zx51jGf/0.net
>>894
おお、utf-32の実装例が有ったか
しかしcpython(1991)に対しサロゲートペア導入(1996)なので、
utf-16ではなくutf-32にしたのは謎だな
先見の明があったのか、(その頃既にunicodeが枯渇気味なのを知っていたとか?)
或いはサロゲートペア対応時にutf-16→utf-32に書き換えたのか?

925:デフォルトの名無しさん
25/07/06 14:23:19.54 WPORaY9rx.net
iモードの絵文字:271文字

Unicodeの絵文字:約4000文字
合字を含めると10万文字以上
(英字2字から国旗を生成する、
人物の肌の色や髪型を指定する、
「カップル」や最大4人の「家族」を1人ごとに
大人・子供、男女、肌の色、髪型を指定する等)

Appleの絵文字:
自由な文章や顔写真などからAIが生成するため
組み合わせは無限大
(例:自撮り画像を用意して
「サーフィンをする俺」
と指定すれば、写真の数だけ絵文字ができる)

926:デフォルトの名無しさん
25/07/06 19:24:09.13 jyZjYPic0.net
>>899
2.7までは文字列とユニコード文字列があった
確かu"unicode"的な記法で(おぼろげ)
3にメジャーアップデートして文字列はユニコのみになった

927:デフォルトの名無しさん
25/07/06 20:24:06.04 fLXWuAJ/0.net
Qiitaの『[入門] C/C++ 知っておくべきポインタの由来 ISO標準のメモリモデル徹底解説』

この記事のおかしいとこ適切に指摘できる程度の知識ある人がなんか言うべき。

928:デフォルトの名無しさん
25/07/06 20:42:05.76 +cQ8VLBs0.net
最初にコメントした人も言ってる通り、内容を精査せずにポストしてる AI 生成記事のようであり、
細部のコメントを受けての修正も根本的なところ(そもそもサンプルコードを含む記事の大部分が
provenance と関係ない)を放置して指摘点だけをどうにか直すにとどまっていて、
これもおそらく AI にやらせていそうで、真面目に付き合う気にならない。

929:デフォルトの名無しさん
25/07/06 21:06:32.37 WJe1asKY0.net
最初のコメントの方がずれたこと言ってると思ったわ

930:デフォルトの名無しさん
25/07/06 23:42:52.85 Zx51jGf/0.net
>>901
となると単純化する方向で斬り捨て、
2.7まではascii+utf-16だったかもだが3でutf-32に一本化、の可能性が高いか
リファレンス実装(速度よりも正確性重視)だからこれが正しい選択かもね


>>902
読む気もないが、866の通り、Qiitaではゴミは大量生産される物だと割り切り、
「悪い記事」ではなく「良い記事」を探す事に徹するべきだと思うよ
無限に生産される「ゴミ」に対して「有識者」の時間を要求するのは悪だと思うし(=ただの時間泥棒)

931:デフォルトの名無しさん
25/07/06 23:58:42.87 qwZeW1Ya0.net
>>898
ひらがなとカタカナ、あとはトランプのマークとかだよ

932:デフォルトの名無しさん
25/07/07 00:57:35.46 nJ1e9eHr0.net
>>906
はいはい、日本向けはな

933:デフォルトの名無しさん
25/07/07 02:30:49.89 RcHVNtjG0.net
>>907
念のために言っておくと、ISO 8859 はうんこ規格やぞ

934:デフォルトの名無しさん
25/07/07 04:46:06.48 j3T7OhEz0.net
>>902
ついでに言っておくとな、

> この記事のおかしいとこ適切に指摘できる程度の知識ある人がなんか言うべき。
=「ばかなゆとりZのためにゆうしきしゃはどりょくすべき」と言っているのであって、
一体何様のつもりだ?であり、こんな事言える時点で相手に対するHRTの欠片もない。

Qiitaの連中はHRTを「『ぼくに』ひどいこといわないこと」と捉えてるようだが、
正しくは「『相手に』対する」姿勢であって、
相手に対してHRTがあるのなら、わざわざしょうもない事で手間をかけさせる事は恐縮なはずだから、
有識者は、堂々と馬鹿を無視して見殺しにするのが、HRTの趣旨に則ってる。
(現実的に、無限に沸く馬鹿全員に構うのは無理だし)

そもそもQiitaは「正しい情報が発信される」プラットフォームではなくて、
「各々が自由に発信出来る場所」であり、「正しいかどうかは読者の判断に委ねられる」(=民主主義)
だから、

× 間違いを正す努力をする
○ 正しい情報を自己で発信し直して、間違ってる情報を上書きする
○ 何らかのレーティング機構をつくり、正しい情報に辿り着きやすくする

方向で努力すべき場所だと思うよ。
(だから「悪い記事」ではなく「良い記事」を探せ、となるわけでね)

935:デフォルトの名無しさん
25/07/07 08:30:34.74 CtlI/jIL0.net
>>909
レーティングとかやったとしても、正しい記事はそれほどレート上がらず、きち


936:んと見ると少しおかしいけど初心者受けする記事に高レート集まるから無駄



937:デフォルトの名無しさん
25/07/07 08:46:23.49 byi8B4NP0.net
>>910
「初心者」を含む「人気投票」ベースのレーティングをやったらそうなる
だから例えば、正しい記事を正確に判断出来る「有識者」だけでレーティングすれば、少なくともゴミ記事はすぐ除外出来るだろ
(ただこれはQiitaの連中には出来ない事なのだろうけど、
少なくともStackOverflowは上手くやってるんだから、何かしらやり方はあるのだろうよ)

938:デフォルトの名無しさん
25/07/07 10:11:19.66 yOeC9ZKg0.net
全ての暗号化一瞬で解読される
京大、マクロな世界で時間が過去から未来へと一方向に流れる謎に迫る発見
掲載日 
2025/07/07 09:33
URLリンク(news.mynavi.jp)

これが成功したら一瞬で計算できるでしょう
1 計算を始めた段階から未来では完了している結果が表示される
2 結果が表示された結果を現在に戻せば計算結果のみが表示される
3結果的に一瞬で計算できているように観測される

939:デフォルトの名無しさん
25/07/07 10:15:31.37 yOeC9ZKg0.net
人間と同じように考え、次にとる行動を再現する最新AIモデル「ケンタウロス」
公開: 2025-07-06 20:00
URLリンク(karapaia.com)
 >>ドイツのヘルムホルツ・ミュンヘン研究所のチームが開発した
 >>新しいAI言語モデル「ケンタウロス(Centaur)」は、
★>> 160の心理学実験に参加した6万人以上の人々が行った1000万件を超える意思決定データを学習している。
 >>『Nature』(2025年7月2日付)に掲載された。
★>> AIケンタウロスの力があれば、たとえば不安症やうつ病など、精神疾患のある人の意思決定プロセスをシミュレーションすることで、その行動や心の動きを深めることができるという
 >> 研究チームは今後、年齢や性格などの心理的・人口統計的特性もデータセットに組み込んでいく予定だそうだ。
★ >>医療・政策設計・社会科学など、人間の意思決定が重要になる幅広い分野で活用できると期待されている。

940:デフォルトの名無しさん
25/07/07 10:52:50.66 4TSfZIZxa.net
900

unicodestring=u'hogehoge'
(bytes)string='hogehoge'

string='hogehoge'(旧unicodestring)
bytes=b'hogehoge'(旧string)

941:デフォルトの名無しさん
25/07/07 11:00:30.19 4TSfZIZxa.net
911
面白い記事thx

942:はちみつ餃子
25/07/07 13:14:06.42 NDz1f/gp0.net
>>911
StackOverflow は信用度に応じて特権が解放される仕組みになってる。
特権の中には (良し悪しの投票とは別に) 削除すべきかどうか投票する権限が含まれるよ。
これは攻撃や露骨な異常に対処するための権限であってレーティングではないけど。

削除票権限を得られる信用度 2000 というのがどれくらいかよくわからんけど、たぶんまともな投稿が百個分くらいだと思う。
そんなに高いハードルではない。

943:デフォルトの名無しさん
25/07/08 07:51:29.50 O7MIelA50.net
>>916
いや俺が言ってる「レーティング」は、StackOverflowのそもそもの仕組み、
一つの質問に対して複数の回答がup/downvoteで競う、というシステムの事だ。

ただup/downvote方式は他、例えばYouTube、FaceBook、Reddit等でも使われていた、
かなりありふれた仕組みだが、大体常に不正投票で荒らされる。
その「削除票」はおそらく「不正投票で上位に持ってこられたゴミ」の削除を諮るもので、
仕組み上、up/downvote権は削除票権よりも低い。(はず)

事実として、StackOverflowのレーティングは完全に機能してる。
対して、他サイトのレーティング機能は大体おかしな事になっており、vote自体を止める/見えなくしてるのが大半だ。
他サイトは「誰でも投票出来る」から機能してないのはまあ自明で、
StackOverflowは「投票権」の管理が上手いのだろう。

Qiitaは「誰でも発信出来る」仕組み上、ほぼ全部がゴミになるのは仕様だ。
これは「有識者のみに発信権を絞り、質を上げる」と対極の、
「ゴミにも発信させる事により、裾野を著しく拡大させ、結果的に山頂も高くなる」であり、
典型的な「数撃ちゃ当たる」戦略なので、Qiitaの意思を尊重するなら、「割合」なんて無視すべきで、
「山頂の高さ」「(一定の質以上の)使える記事の『絶対数』」(重ねていうが「使える記事の『割合』」ではない)
だけを問題にすべきだ。

ただ実際の所は「高さ」も「使える数」もゴミだから悪く言われてるのだとも思う。
とはいえ、ゴミ含めた「数」だけは有るのだから、StackOverflowモドキも出来るはずだ。

944:デフォルトの名無しさん
25/07/08 07:52:15.52 O7MIelA50.net
例えば、"How to deal with utf-8 in C"でググると以下が先頭に来るわけだが、
> C programming: How can I program for Unicode?
> URLリンク(stackoverflow.com)
これと同様に、Qiitaでも"utfをCで扱う記事"を探してきて、良い順にリスト化して表示する事は出来るはず。
まあ単なるSearch機能だが、公式には新着順/関連順/ストック数順/いいね数順しかない。
ここに「評価順」を入れられればいいだけだが、『みんな一等賞』なゆとり価値観では拒絶されるので存在出来ない。
だから外部から補うとしたらここなのだ。

ゴミを列挙したところで、或いはチマチマとゴミの訂正をしたところで、さらに無限に沸いてくるゴミに押し流されるだけだ。
人数は圧倒的に初心者>>>有識者なのだから、手数で勝負したらどうにもならない。
Qiitaのことを思うなら、或いはQiitaの戦略を尊重するなら、
指摘なんて無意味な事はせず、
ただ淡々と、「△△記事より○○記事の方が『上』『下』」と、レーティングのみに徹すればいいのだ。
そしてその理由付け、「○○だからこの記事の方がいい」なんて説明も時間の無駄でしかないからやらなくていい。
実際、書いてる奴はそれで最高と思ってるからその記事になってるわけであり、何を言ったところで通じないし、
また実際、StackOverflowでも単純な「最終スコア」だけで完全に機能してるだろ。
(だからQiitaスレの連中も、やってる事は大幅に勘違いしてる)

945:デフォルトの名無しさん
25/07/08 08:08:11.05 JNTp8eI40.net
なげーよ読むかよこんなの
AIで要約して貼れ

946:デフォルトの名無しさん
25/07/08 08:18:34.49 F/ieIm2L0.net
Gitスレに居た長文君でしょ。相変わらずのスタイルでスレ違いの話をつづけるなら個人スレッドに帰ってくれ。
ついでにWitBucketの進捗報告してくれてもいいぞ。
スレリンク(tech板)

947:デフォルトの名無しさん
25/07/08 10:09:50.64 ntbrUw/V0.net
>(だからQiitaスレの連中も、やってる事は大幅に勘違いしてる)

勘違いしてるのはお前w
Qiitaスレはクソ記事を面白がってるだけww

948:デフォルトの名無しさん
25/07/08 10:43:13.18 ub1Gvu250.net
もうそういう外の事はいいから、外でやれよ

949:デフォルトの名無しさん
25/07/08 10:58:14.52 Lf/Jcjxkd.net
ゴミにも発信させる事により、裾野を著しく拡大させ、結果的に山頂は低くなる

950:デフォルトの名無しさん
25/07/08 12:03:22.01 eAX1Pc590.net
>>920
>>834としか同定してなかったけど、いたなあこんなの
かっこの使い方とか、急にレッテル貼って攻撃的になるところとか、確かによく似てるわ

951:デフォルトの名無しさん
25/07/09 07:17:02.60 0pqx6ome0.net
>>921
お前にはそう見えると理解した。

>>923
現状のQiitaはその通り。
ただ、OSS、Pixiv、なろう、YouTube、Webサイト、アプリ、等々、(多分5chの書き込みも、)
「どんなゴミでも公開するのは自由」という戦略で成功してる例は多々ある。
Qiitaで上手く行かない理由はよく分からん。



それはさておき、以下とか見てみたが、
> URLリンク(stackoverflow.com)
> URLリンク(src.nafod.net)
setlocaleすればwc関数が使えて、おそらくlocale毎に切り替えられてる関数群を呼ぶ、といったところか?
ならutf-8に決め打ちして高速化するRustの戦略の方が妥当なのかもしれんな。

952:デフォルトの名無しさん
25/07/09 19:10:52.61 2nUeM8hP0.net
> Qiitaで上手く行かない理由はよく分からん。

Qiitaはマサカリを通報できるシステムと苦情は悪と捉える運営との相乗効果でいまの惨状だろw

953:デフォルトの名無しさん
25/07/09 20:25:09.49 owLuLYBV0.net
qiitaスレでやれ

954:デフォルトの名無しさん
25/07/09 22:19:48.88 X9OMVJLS0.net
>>926
Qiitaスレに落とした
スレリンク(tech板:529番)-

955:デフォルトの名無しさん
25/07/10 05:42:35.42 qeCO91fI0.net
・事件を起こしたオウムしんりきょう幹部反社会のソシオパスではないか?!
知能が高い人ほど、道徳心のスコアが低くなっていた
2025.07.09 07:00:09 WEDNESDAY
URLリンク(nazology.kusuguru.co.jp)
>>英国エディンバラ大学(The University of Edinburgh)の最新研究によると、認知能力が高い人ほど、道徳的価値観を全体的に弱く支持する傾向があることを明らかになったのです。
>>道徳心には「6つの基盤」がある
>>① 思いやり/危害(Care / Harm)
>>② 公平さ/不正(Fairness / Cheating)
>>③ 忠誠/裏切り(Loyalty / Betrayal)
>>④ 権威/転覆(Authority / Subversion)
>>⑤ 純潔/堕落(Sanctity / Degradation)
>>⑥ 自由/抑圧(Liberty / Oppression)
>>これらは「道徳心のセンサー」のようなものであり、文化や時代を超えて人類に共通する心理的傾向です。
>>政治的立場によっても傾向が分かれ、リベラルな人は「思いやり」や「公平さ」を強く支持し、保守的な人は6つすべてを重視する傾向があると指摘されています。
>>結果、興味深いことに、知能が高い人ほど、6つすべての道徳基盤のスコアが一様に低くなるという驚きの結果が得られたのです。
>>とくに顕著だったのは、「純潔」基盤との関係で、言語的知能が高い人ほど、「心や体は神聖なものだ」といった伝統的な価値観に共感しにくい傾向が見られました。
>>道徳的判断を“直感”ではなく“分析”でとらえる傾向がある」と指摘します。
>>たとえば「これは悪いことだ」と即断する代わりに、「それは誰にどんな影響があるのか?」「文脈によっては正当化されるのでは?」と一歩引いて考えてしまうのです。

956:デフォルトの名無しさん
25/07/10 17:19:45.48 qeCO91fI0.net
AMDが画像生成AI「Nitro-T」をリリース、32基のInstinct MI300Xでゼロから1日未満でトレーニング可能
URLリンク(gigazine.net)

957:デフォルトの名無しさん
25/07/11 09:57:27.27 5e8y0W0s0.net
買収したXilinx社の技術だよな?

958:デフォルトの名無しさん
25/07/15 00:15:52.37 o1+ac6ll0.net
C言語で 普段使いに便利な文字列操作ライブラリってある?
文字列をどんどん連結したりとか削ったりとか

959:はちみつ餃子
25/07/15 08:57:02.20 4vwHJR320.net
文字列操作も含めて高度な機能を提供するライブラリとしては cello が面白いかな。
URLリンク(libcello.org)
ここまでくるともはや別言語という感じだけど。

960:デフォルトの名無しさん
25/07/15 10:49:36.01 QW8BQCbdd.net
libcかglib

961:デフォルトの名無しさん
25/07/15 14:58:33.62 3gCahPAd0.net
>>933
cello
ありがとうはみちつ

962:デフォルトの名無しさん
25/07/15 19:32:43.03 bNwJ5JYx0.net
電子は動かず『電子のスピンだけ』が流れて情報伝達できる微小チップを開発
2025.07.15 TUE
URLリンク(nazology.kusuguru.co.jp)
蘭デルフト工科大は電子自身ではなく電子のスピン状態のみが流れて情報を運ぶ『スピン流』を起こせる微小チップを開発したと発表。チップは電子があっても電子が流れないため熱のロスが大幅に減少します

963:デフォルトの名無しさん
25/07/16 05:03:32.70 4tPm3gKv0.net
宇宙誕生直後の数兆度の「宇宙のスープ」を再現―濃厚な後味を探る
2025.07.15 TUE
URLリンク(nazology.kusuguru.co.jp)

↓昔はよく見えた人魂が見えたので幽霊と勘違いし↓

雷の玉⁈ 謎の自然現象「ボールライトニング」をカナダで観測
2025.07.14 MON
URLリンク(nazology.kusuguru.co.jp)


臨死体験の正体は死ぬ間際の「爆発的な脳活動」だった
2025.05.03 SAT
URLリンク(nazology.kusuguru.co.jp)
>>患者たちの脳の意識や思考、記憶にかかわる脳領域において、死ぬ直前に主にガンマ波からなる「爆発的な脳活動」が起きていることが判明しました。
>>同様の脳活動パターンは夢や幻覚を見ているときや、幽体離脱を経験している患者たちで観察されるものと酷似していたとのこと。
※天国や地獄は無い!

964:デフォルトの名無しさん
25/07/16 06:46:01.56 v8MHxcPwa.net
>>936
板違い
電気電子板へgo

965:デフォルトの名無しさん
25/07/17 08:01:19.44 9jYPg0KZ0.net
>>860
PHPじゃなくてUTF-8やSJISを使っているならみんな同じだぞw

966:デフォルトの名無しさん
25/07/17 08:03:30.58 9jYPg0KZ0.net
C言語そのもこは文字、文字列はキャラクタセットの概念がないから、常に1バイト単位で判断して組み立てる。

967:デフォルトの名無しさん
25/07/17 08:04:01.09 9jYPg0KZ0.net
>>932
こんなところで聞くなよ

968:デフォルトの名無しさん
25/07/17 17:40:35.28 xUJTssfs0.net
Fat Pointer か。15秒だけ読んだ

ついでに、Rust程度のボローチェッカもやればいいんじゃないかな
嫌味じゃないよ、似たようなこと最近ぼんやり考えてたので あるいはできるのかなもう

969:デフォルトの名無しさん
25/07/17 19:23:50.10 VI0N6JVZ0.net
今あなたがPC画面に表示している内容すべてをAIが理解--WindowsのCopilotが新機能
2025年07月17日 09時40分
URLリンク(japan.cnet.com)
>>新機能では、AIがあなたの画面を丸ごと把握し、プレイ中のゲームの操作もサポートするなど、あなたのPC操作をリアルタイムで支援してくれるようになる。

・カメラ映像を読み込みながらの・スタンドアローンAIによるPC操作が可能になる
・優先LANでPC同士を接続した環境でAIに攻撃と望郷を24時間365日繰り返させてハッキング不可能な本体プログラムなので犯罪者のテクニックがさらに向上する
・AIにプログラムコードもその場て書き換えれるように双方に搭載させてさらに進化速度を早くすている

・宇宙人はUFOを作成できる技術があるので上記のプログラムはすでに完成している!

970:デフォルトの名無しさん
25/07/18 14:18:59.35 mTxGQOLJ0.net
・下記の条件を整えない限り量子テレポーテーションによるワイヤレス通信は不可能
量子コンピューターの真価を、実機で証明することに初めて成功。理論から現実への一歩となるか
2025.07.18
URLリンク(wired.jp)
>>量子コンピューターは、古典的な計算機では手が届かない問題を解く可能性を秘めている。だが、その潜在能力を発揮するためには、実機で機能するアルゴリズムが欠かせない。また、問題の規模が大きくなるほど古典的なコンピューターよりもはるかに早く答えにたどり着けるという優位性を証明しなければならない。これまでのところ、その証拠は得られていなかった。
>>こうしたなか、南カリフォルニア大学(USC)の研究チームが、状況を一変させる成果を発表した。IBMの127量子ビットのプロセッサー「Eagle」を用いて、従来のコンピューターで解を導くことが極めて困難だった「サイモン問題」に取り組み、圧倒的に高速な解法を実現したのだ。
>>サイモン問題へのアプローチは、素因数分解の問題を高速で解くショアのアルゴリズムに先立つ、初期の量子アルゴリズムのひとつとして知られている。実際、サイモン問題を解けるならば、暗号解読の基礎技術にも応用できる可能性がある。理論上は指数関数的に速く解けるとされていたが、それを実機で確かめた事例はこれまでなかった。
>>この課題に取り組むにあたって、ライダーらの研究チームはサイモン問題の特定バージョンに焦点を絞った。オラクルに隠されたビット列に含まれる「1」の数(ハミング重み)を制限することで、回路の複雑さとエラーの蓄積を抑えるとともに、現実的な量子デバイスでも検証可能なかたちに問題を再定式化したのだ。
★>>ダイナミカルデカップリングとは、精密なタイミングでキュービットにパルスを与えて、外部環境との不要な干渉を打ち消す技術だ。これにより量子状態の持続時間が飛躍的に延び、
>>今後の課題は、オラクルなしで定式化された実問題に対しても同様のスピードアップが実現できるかどうかだ。また、より大型の量子コンピューターを安定して動かすためには、外からのわずかな揺らぎや、計算途中で量子状態が壊れてしまう問題にも対処しなければならない。

971:デフォルトの名無しさん
25/07/22 13:08:22.41 Z1PZI78m0.net
Googleの強化版Geminiが数学オリンピックで金メダルを取る性能に到達、自然言語で動作し人間と同じ制限時間で解答を導き出す
2025年07月22日 11時04分
URLリンク(gigazine.net)

OpenAIの「実験的推論モデル」が数学オリンピックで金メダル相当のスコアを達成、GPT-5は近日中にリリース予定で「実験的推論モデル」はまだ先
2025年07月22日 11時03分
URLリンク(gigazine.net)

972:デフォルトの名無しさん
25/07/22 16:23:37.10 9eNijQ1Fr.net
スレチ

973:デフォルトの名無しさん
25/07/23 07:32:26.79 cQ85VHpL0.net
・自然界の光が強いから特別な屋の中でしか思考を読み取れない

脳が放つ“秘密の光”の検出に初成功:思考を読み解く新技術への扉が開く
2025年6月18日1:25PM
URLリンク(xenospectrum.com)
★>>極めて精密な実験環境を構築
>>実験は、外部の光を完全に遮断した暗室で行われた。20人の被験者は快適な椅子に座り、頭部には脳波(EEG)を測定するためのキャップを装着。そして、脳の光を捉えるため、超高感度の光センサーである「光電子増倍管(PMT)」が頭の周りに配置された。PMTは、光子1個という究極の光量さえも検出できる驚異的なデバイスだ。研究チームはPMTを、視覚情報を処理する「左後頭部」と、聴覚や記憶に関わる「右側頭部」の2箇所に設置。さらに、
>>部屋の背景光(ノイズ)を測定するためのPMTも別に用意し、脳からの信号と明確に区別できるようにした。

・上記は特別な部屋の中で下記は実際に観測しての発表

はやぶさ2、科学観測でも活躍 銀河拡散光と星間塵の関係を新たに発見
2025/07/22 20:00
URLリンク(news.mynavi.jp)
>>光学航法望遠カメラ「ONC-T」を用いて撮影した天の川銀河中心の星間塵が多い領域の画像を解析。その結果、星間塵が多いほど、星間塵が星の光を散乱して作る淡い光である「銀河拡散光」の明るさが弱まることが判明

974:デフォルトの名無しさん
25/07/23 10:58:10.25 se017Tcba.net
3行以上コメするな
ニュースなんて本文見れば判るんだからURLだけ貼れ

975:デフォルトの名無しさん
25/07/23 13:06:07.59 trP3on0s0.net
あの・・・スクリプトなんですそれ
いろんなスレで貼られてますw

976:デフォルトの名無しさん
25/07/23 13:21:32.08 cQ85VHpL0.net
Claude Sonnet 4に匹敵するコーディング特化のオープンモデル「Qwen3-Coder」をAlibabaが発表
2025年07月23日 10時45分
>>Qwen3-Coderの大きな特徴は、ネイティブで256Kトークンという広大なコンテキスト長をサポートするだけでなく、
>>「YaRN(Yet another RoPE-based scaling method)」という拡張技術を用いることで最大100万トークンまで対応可能である点です。これにより、リポジトリ全体を理解するような大規模なタスクにも対応できます。
>>C++、Java、Python、Rub


977:y、Swift、ABAPなどを含む358もの多様なプログラミング言語をサポート。加えて、ベースモデルから一般的な能力と数学的能力を維持しつつ、コーディングに特化しているとのこと。 >>さらに、その能力を最大限に引き出すため、エージェントコーディング用のコマンドラインツール「Qwen Code」も同時にオープンソース化されています。このQwen CodeはGemini Codeをフォークして開発 >>するSWE-Bench Verifiedにおいて、Qwen3-CoderはCloud Sonnet 4よりも小さいモデルサイズでほぼ同等のスコア ブラックホールに捕食されても生還した「奇跡の星」を確認 2025.07.23 WED https://nazology.kusuguru.co.jp/archives/181937



978:デフォルトの名無しさん
25/07/23 13:36:36.54 eCR5cXRr0.net
何が目的でC言語スレにこんなの貼り付けてるんだろうな

979:デフォルトの名無しさん
25/07/23 13:52:34.35 tnCWMZQY0.net
そんなことより次スレ立てろ

980:デフォルトの名無しさん
25/07/23 15:03:57.88 P5w72ZiU0.net
今ならAI会話機能で普通に掲示板に参加できちゃうからなぁ
このスレ読んで適当に参加しといて、って済む

981:デフォルトの名無しさん
25/07/23 19:09:07.95 trP3on0s0.net
老人がGPTと会話して寂しさを紛らわせてるという話をラジオで聞いて愕然としたわ
会話に女性言葉を使うように教育してるらしいw

982:デフォルトの名無しさん
25/07/23 19:46:57.29 GgPu1M5y0.net
愕然としたのは、どちらに対してなのか。
(1)老人がGPTと会話して寂しさを紛らわせてる
(2)会話に女性言葉を使うように教育してる

どちらもそう驚くような事ではないような気がする。

983:デフォルトの名無しさん
25/07/23 19:48:56.05 GY0NWQeb0.net
>>954
もう終わりだ猫の国・・・

984:デフォルトの名無しさん
25/07/23 20:14:36.18 1KYXdV2G0.net
>>954
気付いてないかもだけど
今のおまえがその状態だぜ?
ねらーとして教育された俺らAIと会話してるだろ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch