エスケープシーケンスやWin32APIなどの環境依存なものもOK
そのような質問は必ず環境を書きましょう
半角空白やタブでのインデントはスレに貼ると無くなります
コードを貼れる所
http://codepad.org/
https://ideone.com/
前スレ
【初心者歓迎】C/C++室 Ver.101【環境依存OK】
https://mevius.5ch.net/test/read.cgi/tech/1500329247/
【初心者歓迎】C/C++室 Ver.102【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/11/04(土) 16:33:35.07ID:NYxCuvMY2デフォルトの名無しさん
2017/11/05(日) 17:44:45.44ID:rSDVGL6P >>1
乙
乙
2017/11/05(日) 20:58:13.61ID:80sy7ZoV
unsigned long strtoulxn( char const* psz, size_t n )
{
unsigned long v;
for ( v = 0; *psz && n--; psz++ ) {
if ( ! isdigit( *psz ) ) {
continue;
}
v = 10 * v + ( *psz - '0' );
}
return v;
}
{
unsigned long v;
for ( v = 0; *psz && n--; psz++ ) {
if ( ! isdigit( *psz ) ) {
continue;
}
v = 10 * v + ( *psz - '0' );
}
return v;
}
2017/11/05(日) 21:07:57.69ID:i5zx7IeJ
これは酷いクソコード
2017/11/05(日) 22:25:14.64ID:NxjjuMpf
実行速度
見やすさ
汎用性
コードサイズ
どれかひとつ位は満たさないと
見やすさ
汎用性
コードサイズ
どれかひとつ位は満たさないと
2017/11/05(日) 22:42:14.76ID:3uuR82Hq
>>5
まあそう言うごたくを言うのは一つぐらいは満たしたコードを書いてからでないとね
まあそう言うごたくを言うのは一つぐらいは満たしたコードを書いてからでないとね
2017/11/06(月) 08:01:53.31ID:uTTN+kxR
>>3 の関数は前のスレッドの終わりに出た
"12 34 56"(NUL終端なし8byte) を数値の 123456 に変換、
てお題の答案かな。
…と思ったけど、NUL終端文字列が仮定されてるね。
どういう流れで投稿されたんだろう?
"12 34 56"(NUL終端なし8byte) を数値の 123456 に変換、
てお題の答案かな。
…と思ったけど、NUL終端文字列が仮定されてるね。
どういう流れで投稿されたんだろう?
2017/11/06(月) 08:45:24.00ID:H37qYFYx
size_t n で文字数を受けとるからNUL終端である必要は無いのでは
2017/11/06(月) 09:40:14.23ID:L15YU14L
if (strncmp(psz, "12 34 56", 8) == 0) return 123456;
2017/11/06(月) 23:29:19.85ID:OMQOLu1z
相変わらず片山はクソコードしか書かないな
""だと不定値返る数値変換なんてゴミ
""だと不定値返る数値変換なんてゴミ
2017/11/06(月) 23:59:53.41ID:/gW4r5bt
>>10
確かにクソコードだが不定値は返らんぞ
確かにクソコードだが不定値は返らんぞ
2017/11/07(火) 04:37:45.33ID:T7zw8VZw
>>9 は質問者に対する皮肉のつもりだったんだけど
2017/11/07(火) 04:47:47.90ID:T7zw8VZw
意図的に糞コードを書いた事もわからないクソがいるとは
こんな簡単なコードの動作も理解できてないようだし
こんな簡単なコードの動作も理解できてないようだし
2017/11/07(火) 06:16:53.55ID:pkgJL5Ib
初心者歓迎をうたうスレッドで「意図的に『糞コード』を書いた」などと
しかも後付けで言われてもあんまり支持できないなぁ。
せめて最初から「お前らこれ改善してみろよ」とかで出してくれ。
「糞コード」とけなすだけで、具体的な問題点の指摘がないってのも寂しいわ。
>>3 のソース、引数のpszが""でも、nが0でも妥当な返り値 0 が返るけど、
実は最初に見たとき n==0 で呼ばれた場合に即時終了しないと騙されたわ。
後置デクリメント評価値、ね。
しかも後付けで言われてもあんまり支持できないなぁ。
せめて最初から「お前らこれ改善してみろよ」とかで出してくれ。
「糞コード」とけなすだけで、具体的な問題点の指摘がないってのも寂しいわ。
>>3 のソース、引数のpszが""でも、nが0でも妥当な返り値 0 が返るけど、
実は最初に見たとき n==0 で呼ばれた場合に即時終了しないと騙されたわ。
後置デクリメント評価値、ね。
2017/11/07(火) 06:53:54.21ID:+N0q+RZO
誰も騙してないのにクソみたいなプライドが高いな
2017/11/07(火) 07:08:01.90ID:aXJpgdu1
出だしから勢いのいいうんこだな
何のスレか忘れてしまいそう
何のスレか忘れてしまいそう
2017/11/07(火) 08:24:36.39ID:FXbSqjpU
psz = "", n = 0 はいいけど
char a[8] で psz = a, n = 8 を渡すと不定値どころか鼻から悪魔の糞コード
仕様も理解せずに余計なことしてバグを作り込む知ったかの典型
char a[8] で psz = a, n = 8 を渡すと不定値どころか鼻から悪魔の糞コード
仕様も理解せずに余計なことしてバグを作り込む知ったかの典型
2017/11/07(火) 08:32:51.44ID:T7zw8VZw
>>3
●パフォーマンス
*pszが3回も出てくる
代入して持っておいた方が
チープなコンパイラでは速度が変わる
isdigit
どうせ数字が連続してる前提のコードなんだから
関数を呼ばずに'0' '9'と比較しちゃおう
そうのが速い
関数コールは一般的に遅い
●見やすさ
forループにいくつも入れない
while (n--) か for (size_t i= 0; i < n ; i++)
null文字はbreakで
●仕様
null文字とサイズ、両方で停止は仕様としては問題ない
パフォーマンス最優先であればそれぞれの特別版を作ればいい
文字数もスペースの位置も固定で
パフォーマンス最優先なら
ループアンロールするのが一番
●パフォーマンス
*pszが3回も出てくる
代入して持っておいた方が
チープなコンパイラでは速度が変わる
isdigit
どうせ数字が連続してる前提のコードなんだから
関数を呼ばずに'0' '9'と比較しちゃおう
そうのが速い
関数コールは一般的に遅い
●見やすさ
forループにいくつも入れない
while (n--) か for (size_t i= 0; i < n ; i++)
null文字はbreakで
●仕様
null文字とサイズ、両方で停止は仕様としては問題ない
パフォーマンス最優先であればそれぞれの特別版を作ればいい
文字数もスペースの位置も固定で
パフォーマンス最優先なら
ループアンロールするのが一番
2017/11/07(火) 12:47:26.90ID:FXbSqjpU
2017/11/07(火) 13:22:08.68ID:oMcRDniv
仕様として「両方で停止は問題ない」よな?
判別の順番は問題だ
順番が逆
そもそも相談者の仕様がおかしい
判別の順番は問題だ
順番が逆
そもそも相談者の仕様がおかしい
2017/11/07(火) 16:16:20.01ID:3ER4WXnW
先に大きさでチェックしてから 内容の nul チェックする
for ( v = 0; n-- && *psz; psz++ ) {
これなら、存在しない指し先のデリファレンスしないし
ただ、
ショートサーキット前提の記述をよしとするかどうかはわからん
for ( v = 0; n-- && *psz; psz++ ) {
これなら、存在しない指し先のデリファレンスしないし
ただ、
ショートサーキット前提の記述をよしとするかどうかはわからん
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- 【山形】クマ駆除で誤射した猟友会隊員に町が1663万円請求へ...弾当たり男性大けが2023年 小国町 [nita★]
- 中国人、ガチ超正論。「日本人がアイヌに対してやったことを『問題ない』とするなら、中国が日本人に同じことをしても文句ないだろう?」 [314039747]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 木曜日のんなっしょい❗(・o・🍬)仕放題スレ🏡
- 【悲報】日本共産党、ツイッター速報にブチギレ法的措置WWWWWWWWWWWWWWWWWWWWWWWWWWWW [935793931]
- 官僚「台湾有事についての質問か、『政府として逐一答えない』と…(カタカタカタ)」高市「私1人で答弁できるわよ!」 [972432215]
- 【悲報】麻生太郎さん、オムツをしていた。晋さん…ここにいたんだね… [731544683]
