X



sizeof(char)が必ず1でも、省略すべきではない
0001デフォルトの名無しさん
垢版 |
2007/08/19(日) 20:06:26
malloc(sizeof(char)*(strlen(s)+1))
ではなく
malloc(strlen(s)+1)
と書くような糞コードばかり見て育った、
悪しき慣習を引きずった人は引退すべし
0634,,・´∀`・,,)っ-○○○
垢版 |
2014/03/12(水) 21:45:07.65ID:DWO9DKRE
お前ら知ってる?

for (int i = 0; i < array.size(); i++)



for (int i = 0 * sizeof(char); i * sizeof(char) < array.size() * sizeof (char); i += 1 * sizeof (char))

の省略表現なんだぜ。


整数型をとる関数の返り値でreturn 1; とかやってるのも
実は return 1 * sizeof (char); を省略したものなのだ。
省略が嫌いな人はちゃんと書くように心がけよう。



極論だけど、「省略」という概念を勝手に作り出すというのはこういうことなんだよ。
0636,,・´∀`・,,)っ-○○○
垢版 |
2014/03/12(水) 22:17:04.10ID:DWO9DKRE
sizeof(char)を使うべきと主張してる例として出てくるコードが
strdup()の車輪の再発明しかないという現実に絶望したのだ
0637デフォルトの名無しさん
垢版 |
2014/03/12(水) 22:33:15.30ID:UhWwNHPB
別にsizeof(char)いいと思うけどなぁ
ほんの少しだけ柔軟
別にめんどいなら1書くしなー
というかこういう話は規約レベルであって個人なら適当でええんでないの
0638デフォルトの名無しさん
垢版 |
2014/03/12(水) 22:36:20.03ID:YzPuo2JA
そういうヤカラは
if (isfoo(a) == TRUE)
と書いて満足げだったりするからタチ悪い。
0639,,・´∀`・,,)っ-○○○
垢版 |
2014/03/12(水) 23:35:55.62ID:DWO9DKRE
>>637
本来必要の無い冗長な式ととわかった上で「別にいい」というのなら
何も反論はない。好みの問題だからな。
書くべき理由も無いし書いたらダメという理由もない。

書かないことを「省略」という概念で捉えるバカは救いようが無い。
sizeof (char)を掛けるのが害悪なのではなく
言語の基本的な仕様すら正しく理解せずにコードを書く人間が
バグの根源なのだ。
0640デフォルトの名無しさん
垢版 |
2014/03/13(木) 11:53:41.67ID:f8T+x/4U
strlen()は引数のアドレスから'\0'のアドレスまでの差分を返す関数だから
>>1のような例の場合には仮にcharが2バイトになろうが4バイトになろうが無意味だな
0642,,・´∀`・,,)っ-○○○
垢版 |
2014/03/13(木) 19:16:45.68ID:0x0bjcUd
だからさ何度も言ってることだけど
charが2バイト以上になったらテキストファイルをメモリマッピングして
読み書きしてるプログラムがほぼ全滅するじゃん。

絶対あってはいけないことを仮定し、それに対するなんの解決にもならない
オレオレ解決策を提示するのは野暮だね。
0643デフォルトの名無しさん
垢版 |
2014/04/30(水) 04:09:09.95ID:OAq57yR0
名前欄のところにAA使うヤツってイタいのしか居ないのか?

uy
,,・´∀`・,,)っ-○○○

それとも、技術力が低いところと粘着質なところをみると同一人物か?
0644デフォルトの名無しさん
垢版 |
2014/04/30(水) 04:34:13.99ID:lAD+rioe
>>643
uyと顔文字だったら技術力は桁違いだぞ。それが読み取れないとしたら、余程読解力が足らないんじゃないか?
0645デフォルトの名無しさん
垢版 |
2014/04/30(水) 11:10:13.40ID:4gXDKzV2
ぷろぐらまには観察力も必要
好き・嫌いだけで思考停止する奴は向いてない
0651デフォルトの名無しさん
垢版 |
2014/11/04(火) 04:16:52.73ID:9XcfLbNC
>>637
0654デフォルトの名無しさん
垢版 |
2016/03/29(火) 10:13:01.80ID:/c8bAcK4
サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ
https://www.youtube.com/watch?v=NDq1QoJY0nY宇ドナルドアナリストパワーストーンコーチングとしまえん
サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー
ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービス不足
サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題
春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残
コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題
マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス
FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了
校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント
高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート
0657デフォルトの名無しさん
垢版 |
2018/05/23(水) 21:10:29.59ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

EVRSR
0658デフォルトの名無しさん
垢版 |
2018/07/05(木) 00:46:51.44ID:RfoszcD2
J7V
0661デフォルトの名無しさん
垢版 |
2021/11/22(月) 05:30:11.46ID:BgcNaRYw
sizeof char8_t ならok
0662デフォルトの名無しさん
垢版 |
2021/11/24(水) 19:05:27.71ID:eedqR6oi
char、intなんて使うな
s8,u8,s16,u16...と定義しておけば移植上の問題も解決しここのchar符号つきだったっけ?などと悩む必要もなくなる
0667デフォルトの名無しさん
垢版 |
2021/12/19(日) 12:24:11.57ID:n0pWJPWX
いつのスレだこれw

charが1バイト以外なんてきいたことないんだけど現実にあるのか?
memalloc(tcslen(s)+1)とかc#ならなんてならわかるけど
0669デフォルトの名無しさん
垢版 |
2021/12/19(日) 13:10:48.61ID:n0pWJPWX
どこであるの?
16ってことはユニコードなんだろうけどstrlenやcharが16で扱われるなら、普通の8bit文字はどういう型や関数になるの?
0671デフォルトの名無しさん
垢版 |
2022/01/01(土) 14:55:46.21ID:Je/lt7i4
そいつもcharは1バイトだしsizeof(char)=1だしmallocも誤作動しない
1バイトが16ビットという変態なだけみたいだな
0673デフォルトの名無しさん
垢版 |
2022/01/02(日) 11:53:10.96ID:qIxMJbVw
通信系で8ビットデータをcharに1バイトずつ入れるか2バイトずつパックして入れるか
の2通りを用意しなきゃならないのが面倒だった

charのサイズよりも
それ意外の特殊な構造の方がよっぽど大変だった
0677デフォルトの名無しさん
垢版 |
2022/01/02(日) 16:29:30.40ID:MzGzgg2X
C2000を使って開発してた時も当然1バイトは8ビットとして会話してた
そうじゃないと会話が成り立たない
0679デフォルトの名無しさん
垢版 |
2022/01/02(日) 21:29:09.83ID:T/GE+9gk
[迷信] 1バイトは8ビット
https://www.kijineko.co.jp/%e8%bf%b7%e4%bf%a1-1%e3%83%90%e3%82%a4%e3%83%88%e3%81%af8%e3%83%93%e3%83%83%e3%83%88/

2008年にIEC 80000-13:2008で1バイトは8ビットと定義されたのですが、C言語やC++では、その後の規格(C17やC++20など)でも1バイトのビット数は処理系定義のままになっています。

では、C言語やC++における1バイトは実際に何ビットになっているかというと、<limits.h>ヘッダで定義されるCHAR_BITマクロがそれを表しています。CHAR_BITマクロは少なくとも8以上に定義されることが保証されています。すなわち、1バイトが9ビットであったり、16ビットであったり、64ビットであったとしても、規格上は何ら問題ありませんし、そうした処理系が実際に存在します。
0681デフォルトの名無しさん
垢版 |
2022/01/02(日) 23:57:28.41ID:MzGzgg2X
ストレージの容量
メインメモリの容量
データ通信速度
データ通信量
全てこれで統一されている

コンパイラが何であれ
0682デフォルトの名無しさん
垢版 |
2022/01/03(月) 03:49:39.60ID:b0ADrG90
そんな一般論は中学生以上ならだれでも知ってるんだよ
そういう一般論でプログラミングして問題起きないのかってスレなんだよ
そして問題ありって具体例が挙げられたというのになぜそんなにかたくなに・・・
レスを投稿する


ニューススポーツなんでも実況