Qiita 7 - キータぞ、来たぞ、キータだぞーat TECH
Qiita 7 - キータぞ、来たぞ、キータだぞー - 暇つぶし2ch720:デフォルトの名無しさん
26/03/01 04:41:59.95 Ihp4TUhS.net
>>718
ジジイ乙

721:デフォルトの名無しさん
26/03/02 00:05:31.63 rkh+heJs.net
>>720
みいちゃん…

722:デフォルトの名無しさん
26/03/04 17:49:30.98 umvekOcL.net
最後に出てくる「みいちゃん」は、過去に5ch(旧2ch)で起きた有名なコピペや「知ったかぶりをする初心者」を揶揄する文脈で使われるネットスラングです。
「君は何も分かってない初心者(あるいは痛い人)だね」という強烈な皮肉を投げ、議論を打ち切っています。

直リン派の認識
利便性と現代基準 今のブラウザやアプリはセキュリティが強く、多くの掲示板アプリ(専ブラ)は `ttp` でも自動で補完してリンク化します。
「h抜き」はもはや二度手間を強いるだけの無意味な儀式に見えています。

h抜き派のに認識
5chには「リンクの先頭の `h` を抜く」という古い慣習があります。
これはかつて、不用意なクリックによるブラウザクラッシュ(ブラクラ)やウイルス感染を防ぐための自衛手段でした。

この状況をAIに解説させて思ったがなぜhttp抜いたか分かってないんじゃない?
ブラクラやウイルス感染を防ぐためじゃなく5chでURL規制で貼れないことが多くIP規制になることもあってhttp削除
714以外は他人の投稿でこのスレをあまり見ないからここでhttp削除の必要がなかったとしても気にするつもりはない
リンクを貼りたいなら貼りたい人が貼り直せ
そこまでリンクにこだわるならなぜおまえが貼り直さない?
おまえがQiita Discussionsに投稿するかは気になるがリンクのことはどうでもいい
小さいことにこだわるやつだな

723:デフォルトの名無しさん
26/03/04 18:05:56.44 DjLSShMS.net
規制とかどうでもいいわなURL貼れないならそもそも書き込みを諦めればいいだけだし

724:デフォルトの名無しさん
26/03/04 18:29:48.59 78qp6zA1.net
http削ると貼れたりするから諦めなくても大丈夫

725:デフォルトの名無しさん
26/03/05 09:27:54.39 GrZo6tuI.net
リンク貼ったら一発退場が懐かしい

726:デフォルトの名無しさん
26/03/05 15:06:37.18 qwmj+r7o.net
『C言語とアセンブリ言語の実行速度を比較する』
 
printfで整数値を10万個出力するのに
・アセンブリ言語からprintf呼び出し→約7秒
・C言語からprintf呼び出し→約40秒
 
ちょっとあり得ん結果になってるんだけど考察もなく終了という気持ち悪い記事。

727:デフォルトの名無しさん
26/03/05 16:59:33.20 kRsvyMri.net
Cでcountをレジスタに割り当てたら速くなるんかな
最適化するだけでもっと速くなるかな

728:デフォルトの名無しさん
26/03/05 17:05:01.42 kRsvyMri.net
実行環境が違っててconsoleの性能差だったら笑う

729:デフォルトの名無しさん
26/03/05 17:21:30.69 catlXG/r.net
__stdcall と __cdecl か

730:デフォルトの名無しさん
26/03/06 11:57:49.23 BuD09eQW.net
>>726
Cコンパイラで*.asm吐いて比べてほしい記事やなあ

731:デフォルトの名無しさん
26/03/06 14:37:48.95 UfOJQwwp.net
consoleの差に一票

732:デフォルトの名無しさん
26/03/16 20:15:30.41 BE2T/V4b.net
『C言語にも配列のlengthプロパティをください ― 配列ポインタ型でサイズ安全な関数引数を実現する』
 
フツー構造体を定義するところを一見便利そうでその実不便な方法を提案する人

733:デフォルトの名無しさん
26/03/16 20:51:23.19 YQ6nobJE.net
>>732
どんな構造体を定義して何をするつもり?

734:デフォルトの名無しさん
26/03/17 00:49:42.37 jwAJtRGn.net
分かんない人は黙ってれば良いのにw

735:デフォルトの名無しさん
26/03/17 01:28:44.89 4o/LzC+C.net
>>732
その記事のやり方が正しい
それが静的な型チェックも実行効率も共に満たす方法

736:デフォルトの名無しさん
26/03/17 08:39:46.77 pXgEASqD.net
chatgpt様に訊いてみた
 
>技術的な評価(ざっくり)
>この記事の主張は Cの仕様としては正しいです。
>ただし実務では多くの場合:
>・void f(uint8_t *buf, size_t len)
>・sizeof(array)/sizeof(array[0])
>・マクロ
>・_Static_assert
>などで処理するケースが多いです。
>理由は単純で
>・uint8_t (*buf)[N] は APIとしてかなり使いにくい
>・可変長配列や動的メモリと相性が悪い
>からです。
 
「uint8_t buf[BUF_SIZE]が意味あるデータ構造なら要素数で区別するのではなく構造体に定義した方がまとまり良いし保守性も向上する」とか言わなかったのは意外な感じ。

737:デフォルトの名無しさん
26/03/17 11:16:03.55 nEFxN0Aa.net
#define _countof(array) (sizeof((array))/sizeof((array)[0]))

738:デフォルトの名無しさん
26/03/17 11:34:23.74 VXykxZTj.net
>>732
あほやん
これでも良いけどさ→(*buf)[i] = (uint8_t)0x00U; /* ポインタを一段デリファレンスしてからアクセス */
これと等価やで→buf[0][i] = (uint8_t)0x00U;
蛇足→0[buf][i] = (uint8_t)0x00U;
しかも結局buf[1][i]とかにもアクセス出来るので根本的な解決になってない

739:デフォルトの名無しさん
26/03/17 11:55:13.41 TEC35O2v.net
実行効率も落ちるんじゃね

740:デフォルトの名無しさん
26/03/17 20:41:56.18 pIcpFrGA.net
>>736
それは悪手

741:デフォルトの名無しさん
26/03/18 13:05:08.86 cAhzJBL5.net
>>732 が本気で便利なら40年50年あるCの歴史でそのやり方が主流にならないはずがない
「フツー構造体」は違うかも試練が「不便な方法」は同意

742:デフォルトの名無しさん
26/03/18 13:49:41.35 LfUPYerJ.net
記事主がコメント欄で
 
>>特定の要素数を前提とする場面なら struct が手っ取り早いような気がしますが,どうなんでしょう?

>ご指摘の通り、自分の触っているコードベース上でも struct でサイズと buf をセットで持たせる設計が一般的で、筆者自身もそちらを採用することがほとんどです。本記事は「素の配列をそのまま渡す設計を採用した場面で、型にサイズ情報を持たせる手段がある」という紹介にとどまるものでした。ちょっと自分の書き方が一般的と誤解させるような内容になってしまいました。気をつけます。mm
 
と書いてる通り一般的方法ではないんだけど>>735みたいのもいるのは世の中広いなw

743:デフォルトの名無しさん
26/03/18 15:00:21.67 zkfG4cW3.net
配列の配列
配列のポインタ
であればどちらも一般的な訳で

744:デフォルトの名無しさん
26/03/18 15:14:12.08 Np+iCs7f.net
>>742
それは二つの違いをわかっていない
その「struct でサイズと buf をセットで持たせる設計」はファットポインタ
つまりアドレスと長さの両方を持つことで可変長のものを受け渡しする方法

一方で今回は固定長の配列
長さを関数呼び出しなどで受け渡しする必要がない
structでサイズを持って受け渡しすることは無意味で無駄で非効率になる
この違いがわからない初心者なのだろう

745:デフォルトの名無しさん
26/03/18 22:28:35.99 Pr3hbF5X.net
記事の趣旨は下記のような場合にエラーが検出できるってことなんだけど

#include <stdint.h>

#define BUF_SIZE 5
#define DATA_SIZE 7

void fill_zero( uint8_t (*buf)[ BUF_SIZE ] );

int main( void )
{
  uint8_t data[ DATA_SIZE ];
  fill_zero( &data ); /* ここでコンパイラが警告またはエラーを出す! */
  return 0;
}

void fill_zero( uint8_t (*buf)[ BUF_SIZE ] )
{
  uint8_t i;
  for ( i = 0; i < BUF_SIZE; i++ )
  {
    (*buf)[i] = (uint8_t)0x00U; /* ポインタを一段デリファレンスしてからアクセス */
  }
}

URLリンク(godbolt.org)

746:デフォルトの名無しさん
26/03/18 22:31:43.22 Pr3hbF5X.net
要素数がBUF_SIZE個のuint8_tの配列がなんかのデータ型表してんなら普通に構造体にするよねえ、

#include <stdint.h>

#define BUF_SIZE 5

typedef struct {
  uint8_t data[ BUF_SIZE ];
} NANKADATA;

void fill_zero( NANKADATA* );

int main( void )
{
  NANKADATA data;
  fill_zero( &data );
  return 0;
}

void fill_zero( NANKADATA* buf )
{
  for ( int i = 0; i < (int)(sizeof(buf->data) / sizeof(buf->data[0])); i++ )
  {
    buf->data[i] = 0;
  }
}

URLリンク(godbolt.org)

記事を肯定的に言ってる人マジわけわからんわ。プログラミングの経験ないのかな?

747:デフォルトの名無しさん
26/03/18 22:45:10.91 IinJ/Cgw.net
>>746
struct {
  uint8_t data[ BUF_SIZE ];
} NANKADATA;

フィールド数が1個の構造体は単なるラッピングであり本質的な話ではない
当然ラッピングしなくても使うことができる
わざわざラッピングした時の事例を持ち出す必要はない

748:デフォルトの名無しさん
26/03/18 22:49:01.71 Pr3hbF5X.net
おっプログラミングの経験ない人か。本当に居るんだねw

749:デフォルトの名無しさん
26/03/18 22:53:15.63 Pr3hbF5X.net
uint8_tの要素数が3のRGBもYUVも区別できなくて問題ないって人かあ。

750:デフォルトの名無しさん
26/03/18 22:54:00.17 IinJ/Cgw.net
ラッピングは型安全性やカプセル化のためプログラミングの常識だが
今回の問題では一切関係がない
ラッピングすることなくそのまま成立する

751:デフォルトの名無しさん
26/03/18 22:56:26.00 IinJ/Cgw.net
無関係なラッピングを持ち出しそれに固執していることからも本質を理解できていないとみえる

752:デフォルトの名無しさん
26/03/18 22:58:23.97 Pr3hbF5X.net
「そんなクソな書き方しねぇよ」という話が理解できない人いんのねw

753:デフォルトの名無しさん
26/03/18 23:05:39.64 3L+0H3qv.net
今回ラッピングなんかはどうでもよくて根本の話は>>742だよね
可変長ならば先頭アドレスと長さをセットで持たなければならない
固定長ならば先頭アドレスのみ持てばよくて長さは型情報として持つべきである

754:デフォルトの名無しさん
26/03/18 23:55:36.84 LfUPYerJ.net
ID:IinJ/Cgwはashworthかな

755:デフォルトの名無しさん
26/03/19 00:25:10.98 1fNhLbVo.net
そこは各型のデータが持つ情報により3つに分かれる
①アドレスのみ
②アドレスと有効長
③アドレスと有効長と容量

①は単体もしくは固定長の連続体
②は可変長の連続体
③は可変長の連続体で伸縮可

①の連続体の場合はその固定長の情報は型に含まれるため受け渡しする必要がない
記事『配列ポインタ型でサイズ安全な関数引数を実現する』が述べているのはそういうことで正しいが説明不足だな

756:デフォルトの名無しさん
26/03/19 02:07:19.07 /Wzj236o.net
『C言語の標準ライブラリを自作して学ぶ、安全なメモリ管理と文字列操作の真髄』
URLリンク(qiita.com)

オーバーフローチェックは重要、みたいなこと書いてるのに

> // 実データの前に size_t 分のヘッダ領域を確保
> block = malloc(sizeof(size_t) + size);

冒頭のコードでオーバーフロー無視してるのはなあ、無能すぎね? つか42tokyoかあ。

757:デフォルトの名無しさん
26/03/19 03:59:02.73 r1H5OpTt.net
>>756
これで満足か?

#include <stdckdint.h>
size_t total_size{};
if (!ckd_add(&total_size, sizeof(size_t), size)) {
 block = malloc(total_size);
}

758:デフォルトの名無しさん
26/03/19 04:38:33.92 MpYhWP5O.net
>>757


759:デフォルトの名無しさん
26/03/19 07:10:42.84 uGXjP4fl.net
C23でようやく標準化されたオーバーフローチェックなんて99%のプログラマーが今後も知らないままだろう
標準化があまりにも遅すぎた
C++23の新機能も同じだ
みんな知らない学習する気もない使う気もない広まらない

760:デフォルトの名無しさん
26/03/19 11:36:28.97 TvMFZsLL.net
>>757
> これで満足か?
 
その記事のおかしいとこそこだけだと思った?

761:デフォルトの名無しさん
26/03/19 19:51:52.27 qPkzmLAQ.net
>>759 expectedが追加されてるけど、例外使いまってる既存資産から置き換えも考えずらいし、新規で使うにも別にC++じゃなくても良くね?な型。

762:デフォルトの名無しさん
26/03/19 22:45:04.98 UtYRo7C2.net
CとC++の標準拡張が連携とれてないよな
この言語はもうダメだ

763:デフォルトの名無しさん
26/03/20 13:02:52.79 iXoBkJ/Y.net
>>762
言語は思考を規定する

764:デフォルトの名無しさん
26/03/21 13:52:48.74 JUJDvVUv.net
>>756
> C言語を学び始めると、標準ライブラリ(stdio.h, stdlib.h, string.hなど)の便利さに気づきます。しかし、その内部で何が起きているのかを意識することは少ないかもしれません。
>
> そこで私は、C言語の標準関数のゼロから再実装に取り組みました。

とか言っててft_mallocの実装mallocのラッパーになっててクソワロタw

> 1. メモリブロックへの「メタデータ」埋め込みによる ft_realloc の実装

glibcならmalloc_usable_sizeでメモリーブロックのサイズ取得できるのに車輪の再発明だなあ。将来的にmalloc部分も自作するとしてメモリーブロックのサイズはどっかに格納すんだしmalloc使ってるならmalloc_usable_size使うで良かろう。
ft_reallocもメモリーブロック再割り当て必要ない場合も常に新しいメモリーブロック割り当てるし第1引数にNULL渡された場合も考慮されてないなあ。
よくこんな記事スクール名誇らしげに明記しながら公開するもんだわw

765:デフォルトの名無しさん
26/03/22 02:13:38.55 wZUeCGG3.net
> これで満足か?
>
> #include <stdckdint.h>
> size_t total_size{};
> if (!ckd_add(&total_size, sizeof(size_t), size)) {
>  block = malloc(total_size);
> }

記事主のレベルに合わせて
if (size > SIZE_MAX - sizeof(size_t)) return NULL;
で良くね?

766:デフォルトの名無しさん
26/03/23 10:23:25.58 sxw8l0ML.net
>>757
> 2. 線形リストの動的管理と「ポインタのポインタ」の威力

> ポイント:
> なぜ t_list ** なのか?

なんて書いてるけど、理解がハンパだからft_lstadd_backの実装クソダサいことになってるなw

767:デフォルトの名無しさん
26/03/23 10:33:36.87 1OOhD5jZ.net
>>766
レス先が間違ってるのか何の話やらさっぱりわからん

768:デフォルトの名無しさん
26/03/23 11:05:37.27 sxw8l0ML.net
誤)>>757
正)>>756

769:デフォルトの名無しさん
26/03/27 13:58:58.93 /DnZZ8sW.net
文字種による組み合わせの数
ASCII文字列に限定して組み合わせの数を考えてみることにします。
アルファベット大文字: 26 アルファベット小文字: 26 数字: 10 記号(印字可能な記号類): 32 使える文字種は 94種類となります。
これらを使って 4桁のパスワードを作る場合の組み合わせの総数は*通りあります。
しかし「大文字・小文字・数字・記号を必ず1つずつ含む」という条件を課した場合には、
各文字から1文字ずつ抜き出した組み合わせの並び替えを考慮して*通りになります。
見た目は「複雑さが増した」ように思えても、実際には総当たりに必要な総数は15分の1に減少してしまいます。
NIST SP800-63の草稿を書いた ビル・バー(Bill Burr)氏6はウォール・ストリート・ジャーナルのインタビューに対して
「今では自分がしたことを後悔している」と述べ、英大文字・小文字・数字等の複雑な組み合わせを提言したことを悔いています。

770:デフォルトの名無しさん
26/03/29 09:12:45.98 WM1+84P1.net
2026/3/25 10:46 9回答 至急です!
中学校の先生をしている私の友人と食事に行った時に、友人が「業務が多くて大変…何か便利なパソコンのソフトというか、
痒いところに手が届くようなシステムを誰か作ってくれないかなぁ…」とボソッと呟いていました。
私はどんなシステムだといいの?と聞いたのですが、具体的には今思いつかないとのことでした。
私はExcelなどでシステム(?)を作ったりするのが好きなので、その友人の力になればと思いました。
そこで質問なのですが、先生方の日々の業務の中で、「こんなシステム、アプリがあればいい!」
「こんなシステムがあって便利だった!」というのがあれば教えていただきたいです。
※個人で作れる範囲でお願いします…
あくまで先生方の業務を助けるものなので、授業 を勝手にやってくれるアプリなどは違います。

771:デフォルトの名無しさん
26/03/29 10:45:15.68 uKkigz0N.net
URLリンク(detail.chiebukuro.yahoo.co.jp)
リンクくらい貼れよ無能

772:デフォルトの名無しさん
26/03/29 11:27:48.49 WM1+84P1.net
そのURL、まさに正解です!鋭いですね。

773:デフォルトの名無しさん
26/03/29 19:46:13.68 60xioQbF.net
AIの上から目線ωωω=2πf

774:デフォルトの名無しさん
26/04/09 09:26:19.56 7gjT4xLw.net
しょうもない記事量産して組織票してそうな会社あるけどqiitaはbanしないのかね

775:デフォルトの名無しさん
26/04/09 16:49:59.22 fX4iGaar.net
ゆめみ?児相?

776:デフォルトの名無しさん
26/04/12 15:34:12.65 B4J5EMNc.net
AIに生成させて自分は見返してもないようなのポストするだけのゴミ山で
しょうもなくないものなんてあるのか?

777:デフォルトの名無しさん
26/04/12 15:52:40.59 BIP0YDzk.net
ゆめみだと10歳娘とかいうきっしょいSSと猛虎弁で記事を連想してるやつの悪印象がつよいな


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