Qiita 2 - キータぞ、来たぞ、キータだぞー

■ このスレッドは過去ログ倉庫に格納されています
2022/07/26(火) 00:20:10.32ID:XQj8UtG3
Hello hackers !
Qiitaは、エンジニアリングに関する知識を記録・共有するためのサービスです。
コードを書いていて気づいたことや、自分がハマったあの仕様について、
他のエンジニアと知見を共有しましょう ;)

https://qiita.com/

Qiita(キータ)は、Incrementsが運営するプログラミング情報のナレッジコミュニティ。
2016年現在で日本最大のプログラマーコミュニティとされている[1]。

https://internet.watch.impress.co.jp/docs/news/1025972.html

前スレ Qiita
https://mevius.5ch.net/test/read.cgi/tech/1542357242/
2023/02/26(日) 22:40:43.27ID:qHcJFulr
コメント連投してる人は暇人だなぁと思うけど
これはいい暇人やろ
こういうふうなコメントこそ求められてると思うけど
2023/03/06(月) 19:42:47.48ID:r0tCpgvu
質問への回答へChatGPTの応答を丸投げする人がいます #443
前回のような個別に対応しますというような曖昧な回答ではなく,是非運営として対応方針をお聞かせ願えればと思います.
2023/03/08(水) 23:58:04.56ID:4eHYlrtD
もう匿名式の質問サイトはダメだな
774デフォルトの名無しさん
垢版 |
2023/03/14(火) 22:18:59.44ID:8y8SbB+t
小道具:英数の別文字コードへの変換(テキストデータなのにボールドとかイタリックとかスクリプト体とか…)
https://qiita.com/ikiuo/items/4359dd27149253cf577b

Qiitaのコメント欄はいつもこれくらいピリピリした感じがあれば良いのに。
2023/03/15(水) 07:34:30.82ID:S/2xoj/O
マシン語がどうとか言ってるが線形探索はマシン語になっても線形探索だから辞書の方が速いんだよなあ
2023/03/15(水) 10:39:46.92ID:pH/GSRp9
「CPU のレジスタ内で完結するコード」とか今まで考えたことすらなかった
そこまで速度にこだわる必要はないでしょ
2023/03/15(水) 12:26:39.43ID:jerUT3o2
実測しないでどっちが速いとか迂闊なこと言えん
2023/03/15(水) 12:41:05.39ID:S/2xoj/O
>>777
速い遅いは膨大なデータを処理して初めて問題になるところだから実測しなくても計算量だけで余裕でわかるぞ
実測が必要なのは時間計算量が同じ場合と小規模データの場合で今回は関係ない
2023/03/15(水) 12:55:47.78ID:jerUT3o2
いまどきのコンパイラは勝手にベクトル化したりするしどういうコード吐くかは見ないとわからん。
ソース見ただけで計算量なんて分かるわけない。
2023/03/15(水) 13:17:37.66ID:aPY7VYJu
ソース見ただけでわからんとかどういうことだよ
計算量はソースからはかるもんだぞ
2023/03/15(水) 13:20:40.00ID:aPY7VYJu
どんだけ頑張って最適化しても大量のデータでは挿入ソートは最適化しないヒープソートに勝つことはない
むしろ無駄ループ入れて1000倍の時間がかかるようにしたヒープソートにすら負ける
これが計算量よ
2023/03/15(水) 13:44:10.45ID:JMNcqHlR
「計算量」と「実効速度」の違いがわからない人って
2023/03/15(水) 20:35:53.94ID:KXZ51f7E
>>778
異なる方法を計算量で比較できると思ってる人?
2023/03/15(水) 21:04:27.21ID:S/2xoj/O
>>783
そのためにある指標だし
785デフォルトの名無しさん
垢版 |
2023/03/15(水) 21:29:10.82ID:h4FnK3FU
三度もレスしてて物知らないってw
2023/03/15(水) 21:32:21.48ID:S/2xoj/O
マジで計算量知らないこの板にやついるんだなって
基礎だぞ?
2023/03/15(水) 21:42:36.28ID:L/tI8VDO
数十文字程度の小規模データの探索の話でしょこれ
2023/03/15(水) 22:01:25.50ID:S/2xoj/O
文書の大きさがどの程度になるかわからんだろw
逆に小さい文書しか作らないなら速度などどうでもいいっつー話w
2023/03/15(水) 22:11:47.12ID:L/tI8VDO
文書の長さこそ計算量上はただの係数やろ
そうなると一文字単位の計算量じゃなく処理時間が影響するやろ
2023/03/15(水) 22:30:39.09ID:CY/tziyM
質問の検索機能についてお聞かせください #450
上記のような問題を解決したいと考え、質問を検索できるようにする予定です
みなさまにお聞かせいただきたい内容
1. どのような項目で検索を絞り込みたいですか?
2. 上記の抽出条件は、主にどんな時に必要かを教えてください
2023/03/15(水) 22:34:40.04ID:eoB9Ihb9
>>770
Qiitaはこの藤田望とかいう奴どうにかした方がいいよね
色んな記事を荒らしまわってる
2023/03/15(水) 22:52:06.71ID:OgurmkNo
間違い指摘されたのを「荒らされた」と逆恨みしてる人かな
2023/03/16(木) 08:14:42.42ID:coFKYGG/
>>789
文書の長さをnとした時にnの増加でどのくらい時間が増えるかを表すのが計算量だぞw
O(n)なら文書量が1000倍の時に1000倍の時間がかかるしO(n^2)なら1000000倍の時間がかかる
だからアルゴリズムをO(n^2)のままで速さを2倍にチューンナップしても500000倍の時間になるから1000倍の時間には全然文字通り桁違いにかなわんのよw
2023/03/16(木) 08:17:01.38ID:coFKYGG/
>>791
間違いを指摘されたのはかわいそうだが直せば済むことだぞ
むしろ間違ったままのゴミばかりだと他の人が困るだろ
2023/03/16(木) 08:28:26.08ID:J6jDYyo3
>>793
いや一文字の変換方法の議論なんだからO(n)じゃなくてn×O(テーブル数)なんだよ
2023/03/16(木) 08:57:56.89ID:coFKYGG/
>>795
一つの文字の変換だけなら一瞬で終わるから何でもいっしょだぞw
まだわからんのかよ
それを実用する時に差が出るだろw
2023/03/16(木) 09:03:39.04ID:coFKYGG/
辞書なら一回の変換でO(1)だから文書をnとしてO(n)なのにそこで線形探索持ってきて機械語を考慮して云々言うのがどれだけアホなのかわからんのかよw
そんなの一発で消し飛ぶのは実測しなくてもわかるわw
798795
垢版 |
2023/03/16(木) 10:08:11.84ID:oia5IsuT
n✕O(1)とn✕O(テーブル数)やろ
どの変換処理だろうが文字数nでループして内部変換処理にnは関わってない
2023/03/16(木) 12:06:57.05ID:coFKYGG/
結局必要なのは個々の変換速度じゃなく最終的な速度だと何度説明してもわからんアホには何も作れんよ
800795
垢版 |
2023/03/16(木) 12:15:09.02ID:nUks2Duv
結論に異論はないが説明が間違ってりゃそりゃ伝わらんよ
2023/03/16(木) 12:21:16.93ID:coFKYGG/
間違ってるように見えるのはお前がアホだからだよ
トンチンカンなことばかり言ってるからわかる
2023/03/16(木) 12:44:45.67ID:d8Ckr3uM
>>774
異字体てなに
2023/03/16(木) 13:17:41.07ID:5yhRoe8q
アホっていうやつがアホ
マジでアホ
どうしようもなくアホ
雑談する目的で誹謗中傷するのは精神がいかれてる
小学生の義務教育からリカレント教育を受け直すべき
誹謗中傷せずに話せないの?
くだらない話題にしか見えない
この話題には当然参加してない
2023/03/16(木) 13:20:30.56ID:k5zGeUtM
これで自分は誹謗中傷してないつもりなのがアホだろ?w
805デフォルトの名無しさん
垢版 |
2023/03/17(金) 00:05:29.98ID:aeVIJ/KU
今年のカレンダーで25記事書ききってぬいぐるみとTシャツもらうためにいまから書きだめておこうと思うんだが(´・ω・`)
2023/03/17(金) 14:38:47.90ID:2zEmq53G
そのぬいぐるみは必要なんですか
807デフォルトの名無しさん
垢版 |
2023/03/21(火) 08:51:57.85ID:C5sD27fs
ChatGPTばっかりやな
2023/03/21(火) 09:55:36.79ID:Tpygyrgn
今そういうキャンペーンしてるしホームに並ぶ記事には運営が恣意的な重みをつけてるからな
2023/03/21(火) 15:54:59.44ID:vHVc4/ZP
セカイを変えるChatGPTを追求せよという空気でChatGPT以外の記事を書ける?
おまえは空気を読めないやつかもしれんが
2023/03/21(火) 17:23:05.79ID:GtV9DAzh
現状ちょっと弄っただけで糞とわかるChatGPTの記事なんて書く意味ない
2023/03/22(水) 12:50:34.89ID:2yBOIXco
現状、正しいコードを書かせるためにプロントを四苦八苦してるうちに自分でコード書いたほうが早いからな…
812デフォルトの名無しさん
垢版 |
2023/03/25(土) 05:45:02.74ID:g6eb42ch
元編 https://qiita.com/kankikou/items/311328b36ff5a60ab19a
続編 https://qiita.com/Nabetani/items/4827584857cb1c584647
高々10Mの足し算で1秒掛かってるのが異常に遅いなと思って
試しに手動アンロールしたら3桁早くなった

主題の分岐予測を気にかけてる人は自動ベクトル化も興味あるだろうし
元編でコメント連投してた藤田望氏は5chで叩かれてもQiita頑張って欲しい

shuffled
simple: duration= 1.4129s sum=957487744000
simple_unroll4: duration= 0.0016s sum=957487744000
foreach: duration= 1.4307s sum=957487744000
opt-simple: duration= 1.4238s sum=957487744000
opt-foreach: duration= 1.4369s sum=957487744000
sorted
simple: duration= 1.4214s sum=957487744000
simple_unroll4: duration= 0.0016s sum=957487744000
foreach: duration= 1.4228s sum=957487744000
opt-simple: duration= 1.4297s sum=957487744000
opt-foreach: duration= 1.4318s sum=957487744000
813812
垢版 |
2023/03/25(土) 06:46:24.02ID:kHu8aUGB
失礼、measure関数で1000回ループしてたので、高々10G回の足し算になってた
でもO3最適化が何かをやっているようだ

g++ -O2 -mavx2
shuffled
simple: duration= 4.3088s sum=957487744000
simple_unroll4: duration= 1.5359s sum=957487744000
foreach: duration= 4.3084s sum=957487744000
opt-simple: duration= 4.7163s sum=957487744000
opt-foreach: duration= 5.5201s sum=957487744000

g++ -O3 -mavx2
shuffled
simple: duration= 1.4113s sum=957487744000
simple_unroll4: duration= 0.0016s sum=957487744000
foreach: duration= 1.4264s sum=957487744000
opt-simple: duration= 1.4410s sum=957487744000
opt-foreach: duration= 1.4378s sum=957487744000

int64_t __attribute__ ((noinline)) simple_unroll4(std::vector<uint> const &data)
{
int64_t sum[4]{};
for (size_t i = 0, size = data.size(); i < size; i+=4)
{
if (128 <= data[i+0]) sum[0] += data[i+0];
if (128 <= data[i+1]) sum[1] += data[i+1];
if (128 <= data[i+2]) sum[2] += data[i+2];
if (128 <= data[i+3]) sum[3] += data[i+3];
}
return sum[0]+sum[1]+sum[2]+sum[3];
}
814812
垢版 |
2023/03/25(土) 06:53:15.92ID:kHu8aUGB
measure関数に __attribute__ ((noinline)) を付けたら正しく動きました
失礼しました
815812
垢版 |
2023/03/25(土) 17:13:39.86ID:hUI94gGa
uint16_tにしたら続編のAVX512と似通ったレベルが出た(続編のsumがmacとwindowsで違うのは何故?)
g++ -O3 (avx2を明示しない方が速かった)
shuffled
simple: duration= 1.0470s sum=957487744000
simple_unroll4: duration= 0.7678s sum=957487744000 ★
foreach: duration= 1.0765s sum=957487744000
opt-simple: duration= 1.3134s sum=957487744000
opt-foreach: duration= 1.3262s sum=957487744000
sorted
simple: duration= 1.0430s sum=957487744000
simple_unroll4: duration= 0.7652s sum=957487744000 ★
foreach: duration= 1.0726s sum=957487744000
opt-simple: duration= 1.3084s sum=957487744000
opt-foreach: duration= 1.3201s sum=957487744000

clang++ -O3 -mavx2 (avx2を明示)
shuffled
simple: duration= 0.8695s sum=957487744000
simple_unroll4: duration= 1.3842s sum=957487744000
foreach: duration= 0.8715s sum=957487744000
opt-simple: duration= 0.8683s sum=957487744000
opt-foreach: duration= 0.8636s sum=957487744000 ★
sorted
simple: duration= 0.8812s sum=957487744000
simple_unroll4: duration= 1.3900s sum=957487744000
foreach: duration= 0.8701s sum=957487744000
opt-simple: duration= 0.8691s sum=957487744000
opt-foreach: duration= 0.8682s sum=957487744000 ★
816812
垢版 |
2023/03/25(土) 17:24:06.36ID:hUI94gGa
合わせて手動アンロールも少し修正
int64_t __attribute__ ((noinline)) simple_unroll4(std::vector<uint> const &data)
{
int64_t sum = 0;
size_t const size = data.size();
size_t i = 0;
size_t const overflow_safe_chunk_size = (1ULL<< (8*sizeof(uint)))/(1ULL<<8); // 0xff = (1<<8)-1
for(size_t ichunk = 0; ichunk < size ; ichunk += overflow_safe_chunk_size){
uint sub[4]{};
for ( ; i < ichunk; i+=4)
{
if (128 <= data[i+0]) sub[0] += data[i+0];
if (128 <= data[i+1]) sub[1] += data[i+1];
if (128 <= data[i+2]) sub[2] += data[i+2];
if (128 <= data[i+3]) sub[3] += data[i+3];

}
sum += sub[0]+sub[1]+sub[2]+sub[3];
}
for ( ; i < size; i+=1)
{
if (128 <= data[i]) sum += data[i];
}

return sum;
}
gccとclangでかなりの違いが出てるのでSIMD intrinsicsで書くべきなんだろうけど
そこまでするとM1/M2で使えなくなるのでこの辺が落としどころ?
2023/03/26(日) 11:02:32.91ID:4Q+hammq
>>816
Qiitaでやればいいのに、、まさか本人か?
叩かれるのが厭だからこっちにきてグダグダやってんのか
2023/03/26(日) 15:18:31.53ID:76I76+n1
こいつQiitaのコメントで暴れまくってる藤田望だろ
2023/03/26(日) 15:52:08.11ID:8M1XC4pp
本人じゃないよ

https://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html
で更に早くなった

g++ -O4 -mavx2
shuffled
simple: duration= 1.4165s sum=957487744000
simple_unroll4: duration= 0.9939s sum=957487744000
simple_vec16: duration= 0.5607s sum=957487744000
simple_vec32: duration= 0.2914s sum=957487744000 ★
sorted
simple: duration= 1.3956s sum=957487744000
simple_unroll4: duration= 0.9907s sum=957487744000
simple_vec16: duration= 0.5611s sum=957487744000
simple_vec32: duration= 0.2766s sum=957487744000 ★

clang++ -O3 -mavx2
shuffled
simple: duration= 0.8921s sum=957487744000
simple_unroll4: duration= 1.3960s sum=957487744000
simple_vec16: duration= 0.3113s sum=957487744000
simple_vec32: duration= 0.2184s sum=957487744000 ★
sorted
simple: duration= 0.8977s sum=957487744000
simple_unroll4: duration= 1.3983s sum=957487744000
simple_vec16: duration= 0.3328s sum=957487744000
simple_vec32: duration= 0.2028s sum=957487744000 ★
2023/03/26(日) 16:12:14.93ID:8M1XC4pp
typedef uint v32 __attribute__ ((vector_size (32)));
int64_t __attribute__ ((noinline)) simple_vec32(std::vector<uint> const &data)
{
int64_t sum = 0;
size_t const size = data.size();
size_t const overflow_safe_chunk_size = (1ULL<< (8*sizeof(uint)))/(1ULL<<8); // 0xff = (1<<8)-1
size_t const unroll_step = sizeof(v32)/sizeof(uint);
v32 const *pv32 = (v32 const*)data.data();
size_t const size32 = size/unroll_step;
size_t i = 0;
for(size_t ichunk = overflow_safe_chunk_size ; ichunk < size32 ; ichunk += overflow_safe_chunk_size)
{
v32 sub{};
for ( ; i < ichunk; ++i) sub = (128 <= pv32[i]) ? (sub + pv32[i]) : sub;
for(int d = 0; d < unroll_step ; ++d) sum += sub[d];
}
for ( size_t j = i*unroll_step; j < size; ++j) if (128 <= data[j]) sum += data[j];

return sum;
}
simple_vec16は32->16

>(続編のsumがmacとwindowsで違うのは何故?)
記事にないけどgithubのrun.batを見たらサイズが10Mではなく1Mでの数字になってた
なので"C++ on Thinkpad"の実行時間は10倍する必要がある
AVX512とあったので新し目のマシンだと私が勘違いしただけ

肝心のvector extensionは
https://gcc.gnu.org/onlinedocs/gcc/AArch64-Options.html
この辺見てるとM1/M2でも動きそうな期待が...
2023/03/27(月) 12:46:47.87ID:XkUggZJB
Qittaでなく5chでやる意味がマジ解らん
2023/03/28(火) 13:06:07.71ID:cPoQHK67
いや?俺はよく分かる
誰も求めてないのに書くのは同じ
違うのは場所がキータかここかの違い
彼らにとって大事なのは承認欲求?でありほかの何でもない
2023/03/28(火) 13:49:42.95ID:3VIBVyjk
うぜーから出ていけ、っていう話だよ
分かったなら出ていってくんないかな
824デフォルトの名無しさん
垢版 |
2023/03/30(木) 20:44:08.18ID:fTJXckXZ
https://qiita.com/Qiita_chan/comments

運営はこういうことやらない方が良い
2023/03/30(木) 21:06:08.35ID:KjCiHOso
>>824
運営っぽい名前出してるだけまだマシじゃん
これまでずっとスタッフの個人垢でこういうことしてたんだぞ
2023/03/30(木) 21:20:53.69ID:e87SyOqr
どう考えてもスパムだろw
2023/03/30(木) 23:33:42.71ID:sAgkV5No
うるせー馬鹿
2023/03/31(金) 16:25:54.02ID:ncUugaX3
botによるコメントは普通に考えて迷惑行為
829デフォルトの名無しさん
垢版 |
2023/03/31(金) 21:43:44.84ID:8CJLc1yu
CNNをライブラリなしで0から作成してみた(C言語、Convolutional Neural Network)
https://qiita.com/Mizuiro__sakura/items/9634bcd0f163084d402a

あれ?既視感?とおもってぐぐってみたら

https://webcache.googleusercontent.com/search?q=cache:LRitXa4fOIYJ:https://qiita.com/Mizuiro__sakura/items/9cff0ad16da90f89cebe

同じ人による再投稿か。期待した反応がなかったからか知らんがクソ記事繰り返し読まされてしまうと迷惑なのでやめて欲しいな。何よりアイコン画像がキモい。
2023/03/31(金) 22:16:10.17ID:tr7cKY8h
キータの本質はクソ記事なので
それをやめることはできない
2023/03/31(金) 22:32:45.07ID:aJ3/u9D0
ヨソからの引用だらけの記事のくせに承認欲求だけは人一倍ある感じがなんだかな
件数減らして正解率上がったって言ってるけどアホじゃなかろうか
2023/04/02(日) 13:45:48.58ID:Ky8sq4kq
>>829
まじめに読んでる人がいたことに驚き
2023/04/03(月) 03:02:51.33ID:V0D5Q5Pa
AIロボットによるコメントは禁止・無条件削除すべきです #457
最近、あるアカウントで、見境なく、「コメント」と「いいね」を付けまくっているユーザーが居ます
://github.com/increments/qiita-discussions/discussions/457

@Qiita_chan botはご遠慮ください
://qiita.com/EndOfData/items/9f82d4e46540504e5fc6
834デフォルトの名無しさん
垢版 |
2023/04/04(火) 08:09:17.95ID:erD0CuRV
>>824
削除されたぞ
俺らの勝利だ!
2023/04/04(火) 09:42:05.37ID:ktWoV7jH
キータとsejukuが無くなって
「調べてみまました いかがだったでしょうか」系サイトが全部無くなって
ぐぐり結果に平和が訪れたときこそ本当の勝利
2023/04/04(火) 09:48:09.58ID:c9lb0JIW
【Ruby】String#[]= について「すごい」と思ったので、予想を混ぜつつ調べた過程をまとめた - Qiita
https://qiita.com/yuki82511988/items/45a6adcb677f7bddc19f

何がすごいのか理解するまで3分かかった(白目)
2023/04/04(火) 09:49:09.86ID:c9lb0JIW
>文字列も配列のように添字を指定することで、該当する文字を得ることができる
アッハイ
としか言いようがねえぞ
2023/04/04(火) 09:51:59.35ID:cu0WQi3X
>>837
アッハイ
としか言いようがねえことを俺らに見せても
アッハイ
としか言いようがねえぞ
2023/04/04(火) 09:56:40.38ID:c9lb0JIW
文字列に[]でアクセスできるのがすごいと思ってるのが少数はいるというのが分かったことが今日の収穫でした(小波
2023/04/04(火) 10:09:00.95ID:erD0CuRV
アッハイと言いたいだけだろw
2023/04/04(火) 10:10:12.84ID:erD0CuRV
今日のマウント合戦

Rubyは凄いと言われてるが
俺に言わせればアッハイとしか言えねぇな。
2023/04/04(火) 10:16:31.95ID:cu0WQi3X
内心の自由を侵害している
すごいと思う内心を認めないわけですごくないと思わないといけないわけ?
そんな生き方は疲れると思うね
2023/04/04(火) 10:19:01.15ID:erD0CuRV
アッハイ
2023/04/04(火) 10:27:06.84ID:cu0WQi3X
他人が違う考え方をしてることを認めないと多様性のある社会では生きにくいね
2023/04/04(火) 11:26:09.17ID:a5hZWkPv
Ruby で、部分文字列を抜き出す

例えば、インデックス1 から、3文字分。
ただし、インデックスは0から始まる

p "aあbいc"[1, 3]
#=> "あbい"
846デフォルトの名無しさん
垢版 |
2023/04/04(火) 14:43:02.54ID:NrMPyXSZ
>>835
sejukuホント邪魔
kentaもchatGPTも消えて欲しい
2023/04/04(火) 15:12:31.90ID:SLB1VKfK
> これまではSalesforce(Apex)などを扱っていました。
仕事でapex遊べるんだね、すごい
2023/04/04(火) 15:30:30.92ID:ktWoV7jH
Rubyの特徴として文字列は可変であると知ってたら
それ以上何を驚くことがあるのか
なぜソースを追う必要があるというのか
なぜソースを追って何か得るものがあると期待したのか不思議
うん?そりゃ・・・そりゃそうでしょ?うん
つまり、アッハイとしか言いようがない
2023/04/04(火) 17:15:07.15ID:erD0CuRV
はいはい、そーだねー
2023/04/04(火) 19:56:39.21ID:/ayUyQoP
C言語だと文字列は本当は配列なのですごくもなんともないがRubyだとすごいんだろ
知らんけど
2023/04/04(火) 20:01:58.33ID:ktWoV7jH
記事のコメントにもあるけど
[]じゃなくて[]=なんよせめてコイツの見るべきは
フォーカスがぶれぶれで何が「すごい」のか伝わらんけど平気なのが「すごい」わ
2023/04/04(火) 20:07:29.47ID:/ayUyQoP
すごいのは取得の方らしいぞ
添字で取得できない言語って何使ってたんだろ

> 文字列も配列のように添字を指定することで、該当する文字を得ることができるみたいですね。
>
> 配列に対して[1]で値が取れるのは個人的に納得できるのですが、なぜ文字列に対してこのようなことができるのでしょうか。
2023/04/04(火) 20:12:58.79ID:/ayUyQoP
>>852
よく見たらApexと書いてあったわ
https://developer.salesforce.com/docs/atlas.ja-jp.240.0.apexcode.meta/apexcode/apex_methods_system_string.htm#apex_System_String_charAt
メソッドで取得できるじゃん
2023/04/04(火) 20:23:26.00ID:ktWoV7jH
あーなるほど取得がスゴイで正解だったか
もう俺の脳ではついていけないことがわかった
2023/04/04(火) 23:42:42.05ID:erD0CuRV
C言語みたいに文字列は配列が常識の人には凄さがわからないんだろうね。

配列だから文字を取得するのが出来るのは常識という発想は
古い発想でASCII文字列しか考慮してないんだろうけどw

おじいちゃん、今はUTF-8で一文字のバイト数は可変の時代よ?
C言語のやり方じゃ取得できないの
856845
垢版 |
2023/04/04(火) 23:49:51.62ID:xtlScvd1
Ruby では、CP932 でも正常に動く。
一旦、UTF-8 へ変換して処理してから、またCP932へ変換しているのかな?

str_utf8 = "aあbいc"
p str_utf8.encoding #=> <Encoding:UTF-8>

str_cp932 = str_utf8.encode( Encoding::CP932 )
p str_cp932.encoding #=> <Encoding:Windows-31J>

p str_utf8[1, 3] # インデックス1 から、3文字分
#=> "あbい"

p slice_cp932 = str_cp932[1, 3] #=> "\x{82A0}b\x{82A2}"
p slice_cp932.encoding #=> <Encoding:Windows-31J>

p slice_utf8 = slice_cp932.encode( Encoding::UTF_8 ) #=> "あbい"
p slice_utf8.encoding #=> <Encoding:UTF-8>
2023/04/04(火) 23:53:41.39ID:s1fA85/W
>>856
質問禁止
Qiitaで聞くべき
858デフォルトの名無しさん
垢版 |
2023/04/05(水) 02:14:36.32ID:AynPvYbj
>>855
おまえは↓見てスゴイスゴイ言ってれば良いよ。
#include <stdio.h>

void print(const char** s)
{
while (*s) {
printf("%s", *s);
s++;
}
}

int main(void)
{
const char* hello[] = {"こ", "ん", "に", "ち", "は", "世", "界", NULL};
puts(hello[3]);
puts(hello[1]);
puts(hello[0]);
hello[0] = "H";
hello[1] = "e";
hello[2] = hello[3] = "l";
hello[4] = "o";
print(hello);
}
https://wandbox.org/permlink/OtKKJplub0RkTQGy
2023/04/05(水) 03:54:38.90ID:/zIzO/Am
>>858
そんなの見せられてもC言語はしょぼいなとしか言えんわなw
2023/04/05(水) 08:30:48.03ID:Tk2t3+4w
> C言語はしょぼいなとしか言えんわなw

Rubyのあれ見て凄いと言う人の感想なんてこんなもんだろう。
861795
垢版 |
2023/04/05(水) 08:52:04.62ID:PhrX70Dm
Cの限界を表したネタコードだぞ
2023/04/05(水) 11:53:36.19ID:x0KuHrAi
>>860
「C言語がしょぼい」は否定しないんだねw

結局さ、お前は「す、すごくないし」って言ってるだけなんだよ
お前は何も凄いことできないのにね
2023/04/05(水) 11:54:17.60ID:jU3TV3ZD
Rubyはキチガイ専用言語だから
2023/04/05(水) 12:01:04.72ID:Wac7S0S8
> 結局さ、お前は「す、すごくないし」って言ってるだけなんだよ
> お前は何も凄いことできないのにね

効いてる効いてるw
2023/04/05(水) 12:07:10.85ID:vCDHSuJP
東浩紀「あの、これさ……自民党は統一教会と関係しているからこのようなテロを招いたということを言った?」
2023/04/05(水) 12:07:46.45ID:vCDHSuJP
東浩紀「もしかしたら・・(周りの空気を確認)」
石戸諭「それに近い」
三浦瑠麗「ほぼそれに近い」
夏野「まあまあまあまあ」
東浩紀「これは た、い、へ、ん な 発言ですよねぇええ(上擦った声で)」
夏野「そういうことがあるとすれば、という言い方はしてた」
三浦瑠麗「一応保険はかけてらした」
東浩紀「でもね、向こうから言ってるしね。ちょっとこれ大変なことだなぁ」
石戸諭「だから! 福島さんというか だから! 社民党は小さくなるんですよ!」

東浩紀「とんでもねぇ話だなぁこれぇ!?」
三浦瑠麗「私は野党にチャンスを与えた訳でしてね…」
石戸諭「いやぁ!それを見事に蹴っ飛ばしましたね!」
東浩紀「こんなの!許される訳ねぇに!決まってんだろ!」
三浦瑠麗「これはもう間違いなくニュースになりますね。 そして”私に責任はない”はずです。私は牽制球を投げましたから」
石戸諭「いやいや!三浦瑠麗さんには責任では全然ないですよ!福島さんの全責任です!」
三浦瑠麗「びっくりしましたね」
東浩紀&石戸諭「びっくりした!」
東浩紀「いや!これはとんでもない事ですよ! とんでもないなぁ!」
2023/04/05(水) 12:12:05.41ID:x0KuHrAi
>>864
凄いものを凄いと認められないようじゃ
君はもうそこで成長は終わりだよ
2023/04/05(水) 12:57:33.53ID:jU3TV3ZD
Rubyの話題だとキチガイ乱入でだいたいこんな感じになる
2023/04/05(水) 20:32:03.53ID:sB818/CP
https://qiita.com/ryotaro23/items/ae4fd640648d0b56018e
引かぬ!
媚びぬ!
省みぬ!
いくらマサカリ食らっても確認もせずいい加減な記事を公開し続けるメンタルすげーわ
2023/04/05(水) 21:07:26.62ID:kJ8vSb5D
自己顕示欲以外に関心は無いので当然
記事が正確かどうか
記事に価値があるかどうか
そんなもんはクソくらえである
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。