[過去ログ] C言語なら俺に聞け 163 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
481: (ワッチョイ be63-Vy5I) 2024/12/17(火)12:49 ID:6SQ8uEd20(1) AAS
そこは禁欲しましょう
482(1): (ワッチョイ 33ef-iztn) 2024/12/18(水)01:25 ID:ILkVh3nA0(1/2) AAS
>>476
朝わかりやすいね
でもANSIって1バイトと2バイト混合できるよね?どうなっちゃうんだろう
483(2): 2024/12/18(水)02:49 ID:NqM0X43U0(1) AAS
>>482
ANSIはバイト=文字数
そもそも論理的な文字数じゃなくて処理単位での文字数ね
だから strlen("あいう") = 6
strlen("123あ67い0") = 10 // 数字は半角(1バイト)、ひらがなは全角(2バイト)
Unicodeの場合でも正しい文字数になるわけじゃない、サロゲートペアの場合に文字数は2(4バイト)になる
484(1): はちみつ餃子◆8X2XSCHEME (ワッチョイ 0f32-782k) 2024/12/18(水)09:23 ID:w442kBzm0(1/2) AAS
Unicode だとサロゲートペアを脇においても異体字だの合成だのといったものがあるし、人間が紙の上に書くときの直感的な感覚で言うところの「文字数」とは定義が違うので、各文字コードの仕組みを知っておくしか仕方がない。
485(1): (ワッチョイ 3339-iztn) 2024/12/18(水)17:31 ID:ILkVh3nA0(2/2) AAS
>>483
>>484
つまりこの方法だとコンパイル時に気をつけるしか無いってことか、大変だね
テキストエディタみたいなの作ろうとすると禿げ上がりそう
486: (ワッチョイ 8b93-1p0V) 2024/12/18(水)17:41 ID:NuF84nX60(1) AAS
文字コード問題よりC言語で作れってほうがハゲりそうだ
487: (ワンミングク MMda-UGgi) 2024/12/18(水)17:56 ID:2i1n2GHXM(1) AAS
固定長ならそこまで禿げないかと
488: (ワッチョイ 66be-1w4P) 2024/12/18(水)18:24 ID:ccS3E3GJ0(1/2) AAS
>>485
方法が大変?
お前まだ理解できてないぞ
一般論として文字コードの扱いは大変だがTCHARの仕組みは単純だ
489: (ワッチョイ 2679-qWVo) 2024/12/18(水)18:25 ID:U+/f/ac80(1/3) AAS
CがC++だったとしても変わらんでしょ
VSCodeはレンダリングの都合でWebルレームワークとjavascriptで作られてるからC/C++製エディタと比較して遅いというデメリットがある
490: (ワッチョイ 66be-1w4P) 2024/12/18(水)18:34 ID:ccS3E3GJ0(2/2) AAS
c言語で文字列処理はクソ面倒でしょ
ライブラリの整備からやる必要がある上にコードがとっ散らかる
491: (ワッチョイ 2679-qWVo) 2024/12/18(水)18:36 ID:U+/f/ac80(2/3) AAS
Windowsの場合使用フォントに応じて描画幅を返すAPIに丸投げできるから大した手間にならないが
メモ帳の「右端で折り返す」相当を実装する場合右端のどこで切るかでその人センスが露になる
492: (ワッチョイ 2679-qWVo) 2024/12/18(水)18:41 ID:U+/f/ac80(3/3) AAS
>>480
何か誤解があるみたいだが開発言語にCを選ぶようなやつがそんなのを面倒に感じる事はないんだよ
493: はちみつ餃子◆8X2XSCHEME (ワッチョイ 0f32-aNNs) 2024/12/18(水)22:35 ID:w442kBzm0(2/2) AAS
アプリケーションを作るにあたって TCHAR が必要になる状況はそれほどない。
Unicode 対応をきちんとやるならそれとは別に ANSI 版も作るという必要性はないし、両方を作る必要性がないなら切り替えを意識する必要もないから。
最初から WCHAR で書けばよい。
ライブラリとしてまとめるならどちらにも対応したほうが良いこともあるかもしれんけど。
494: (ワッチョイ be63-Vy5I) 2024/12/18(水)23:14 ID:1nhczz8f0(1) AAS
テキストエディタ、アセンブラで作った奴いるだろう
ハゲてはいなかったと思う
495: (アウアウエー Sae2-N2kD) 2024/12/19(木)15:05 ID:p9TYuGiMa(1) AAS
>>483
strlen("123あ67い0") == 12 // utf-8
496: (ワッチョイ be63-Vy5I) 2024/12/19(木)15:35 ID:boHB/shj0(1) AAS
strcat()、実装大変そうだな
497(2): (ワッチョイ eaad-NYGQ) 2024/12/19(木)18:03 ID:KNZC4rFA0(1/5) AAS
UTF-8のバイト数ではなく文字列の長さを調べるソース
外部リンク:drive.google.com
498(1): (ブーイモ MMbf-1w4P) 2024/12/19(木)18:29 ID:ByBpVqn8M(1/3) AAS
>>497
Unicodeで文字列の長さって何?
書記素クラスタか?
って突っ込まれるから知ったかぶらないほうがいいぞ
499(1): (ワッチョイ eaad-NYGQ) 2024/12/19(木)18:32 ID:KNZC4rFA0(2/5) AAS
>>498
文字数を数えられるように自分で書いたのだけど?
文字数数えられるけど知ったかとは?
500: (ワッチョイ 4a5b-SaU4) 2024/12/19(木)18:34 ID:hCGKCs/t0(1/3) AAS
👩🏽👩🏿👧🏻👧🏽
501(1): (ブーイモ MMbf-1w4P) 2024/12/19(木)18:41 ID:ByBpVqn8M(2/3) AAS
>>499
それがまさに知ったか
unicodeの基礎すらわかってない
そんなやつのライブラリなんで誰が使うんだよ
502(1): (ワッチョイ eaad-NYGQ) 2024/12/19(木)18:45 ID:KNZC4rFA0(3/5) AAS
>>501
基礎ってなに?
ただ文字数数えれるプログラムとしてだしたのに
503(1): (ブーイモ MMbf-1w4P) 2024/12/19(木)18:50 ID:ByBpVqn8M(3/3) AAS
>>502
それは書記素クラスタか?ときいてるだろ
でもその言葉の意味がわからんのだろ?
504: (ワッチョイ eaad-NYGQ) 2024/12/19(木)18:52 ID:KNZC4rFA0(4/5) AAS
>>503
なんで書記素クラスタって言葉にこだわってるの?
もしかして教科通りにU+数字じゃないから言ってるだけ?
505(1): (ワッチョイ 4a5b-SaU4) 2024/12/19(木)19:11 ID:hCGKCs/t0(2/3) AAS
﷽は1文字か?
506: (ワッチョイ eaad-NYGQ) 2024/12/19(木)19:27 ID:KNZC4rFA0(5/5) AAS
>>505
1文字 3バイトみたいだね
ソースを変えて出力してみた
507: (ワッチョイ 4a5b-SaU4) 2024/12/19(木)19:38 ID:hCGKCs/t0(3/3) AAS
そうなんだ
よかったね
外部リンク[txt]:www.unicode.org
508: (ワッチョイ 66fc-1w4P) 2024/12/19(木)19:46 ID:zv08w2oi0(1) AAS
main関数用のヘッダファイル用意してて草
509(1): (ワッチョイ b704-1exS) 2024/12/19(木)19:59 ID:iU+Lg9qY0(1) AAS
unicode怖ひ
510: (オッペケ Srb3-aNNs) 2024/12/19(木)20:00 ID:y/hB6qNpr(1) AAS
退勤前に>>497見て、
ああ、"フロッピーディスク"って入れたら8が返り、"ハードディスク"って入れたら2.5が返るような関数だろ。
って思いつつ帰宅したら、またお前らときたら
上下前次1-新書関写板覧索設栞歴
あと 492 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.027s