[過去ログ]
C言語なら俺に聞け 160 (1002レス)
C言語なら俺に聞け 160 http://mevius.5ch.net/test/read.cgi/tech/1672191630/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
956: デフォルトの名無しさん (ワッチョイ 67c9-ieXZ) [sage] 2023/04/17(月) 08:14:09.28 ID:TjOyN7pL0 if (n < 0) n = -n; http://mevius.5ch.net/test/read.cgi/tech/1672191630/956
959: デフォルトの名無しさん (ワッチョイ 67c9-ieXZ) [sage] 2023/04/17(月) 10:57:06.60 ID:TjOyN7pL0 >>957 int で受けて 文字列化してるからちょっと 最初から文字列で受けてるなら一考の余地はあるかもね http://mevius.5ch.net/test/read.cgi/tech/1672191630/959
963: デフォルトの名無しさん (ワッチョイ 67c9-ieXZ) [sage] 2023/04/17(月) 12:56:30.89 ID:TjOyN7pL0 文字列を受ける場合 int chg(const char* s) { int ret = 0; char tmp[2] = { 0 }; while (*s && !isdigit(*s)) s++; /*数字じゃないところは飛ばす */ if (*s) { while (*s && isdigit(*s)) { /* 数字が連続している間だけ */ tmp[0] = *s; ret += atoi(tmp); s++; } } return ret; } 環境依存で isdigit(*s) を ('0'<=*s && *s <='9') に tmp[0] = *s; ret += atoi(tmp); を ret += s[0] - '0'; に 置き換えることもできるかもしれない http://mevius.5ch.net/test/read.cgi/tech/1672191630/963
965: デフォルトの名無しさん (ワッチョイ 67c9-ieXZ) [sage] 2023/04/17(月) 13:15:24.09 ID:TjOyN7pL0 >>964 さんきゅう 数字は保障されてたか http://mevius.5ch.net/test/read.cgi/tech/1672191630/965
966: デフォルトの名無しさん (ワッチョイ 67c9-ieXZ) [sage] 2023/04/17(月) 13:21:38.21 ID:TjOyN7pL0 次の while (*s && isdigit(*s)) と意図の一部は重なるし if (*s) はいらんかったね http://mevius.5ch.net/test/read.cgi/tech/1672191630/966
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.028s