C言語なら俺に聞け 148

1デフォルトの名無しさん (アウアウカー Sacf-slpW)2018/09/19(水) 17:56:50.83ID:XSTNMnDwa
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/

C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf

C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html

C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/

JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/

※前スレ
C言語なら俺に聞け 147
http://mevius.5ch.net/test/read.cgi/tech/1534430162/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured

806デフォルトの名無しさん (アウアウカー Safb-dUTK)2018/10/19(金) 10:20:47.68ID:SjrnPnkZa
ポンコツかどうかはコード書かせれば分かるだろ。
この世界では他がポンコツでもコードが書ければ正義だ。

807デフォルトの名無しさん (ワッチョイ f364-qPjg)2018/10/19(金) 12:53:54.85ID:7j5wTJzZ0
>>802
すまん。俺には知識もないし賢くもないので
もしもあなたさえ良ければ>>653のゴミな点を指摘してもらえると嬉しいな。

808デフォルトの名無しさん (ラクッペ MMc3-2+nH)2018/10/19(金) 13:19:52.78ID:R+tFUjApM
>>806
いくらコードが書けても設計通りに書けないなら駄目じゃん

809デフォルトの名無しさん (JP 0H1b-87xj)2018/10/19(金) 13:27:43.51ID:F6BbYzOIH
>>807
hello worldの存在意義は、
その言語に初めて触れる人に、
言語の規格にきちんと準拠して、
最小限の記述で、
きちんと動作する、
何かのプログラムを見せることだよ。
どんな設計スタイルがいいとか教えることじゃない。

810デフォルトの名無しさん (ワッチョイ 978a-aSWc)2018/10/19(金) 13:59:06.39ID:P91Z2zs70
hello, worldって
コンパイラをインストールした後
動作確認する為のテスト用だと思ってた

811デフォルトの名無しさん (ワッチョイ be61-7PZ0)2018/10/19(金) 14:28:27.19ID:bojs5aOI0
ゲーム機ハックした人が最初に実行した自作アプリがhello worldだったとかなんとか。

812デフォルトの名無しさん (アウアウウー Sa9f-BMDm)2018/10/19(金) 14:33:09.80ID:gPrGaWTXa
カーニハンそんなことやってたっけ?

813デフォルトの名無しさん (アウアウカー Safb-dUTK)2018/10/19(金) 15:14:02.97ID:SjrnPnkZa
>>808
設計通りに書けない奴はコードが書ける奴とは言わんだろ。

814デフォルトの名無しさん (アウアウカー Safb-dUTK)2018/10/19(金) 15:21:55.54ID:SjrnPnkZa
>>809-810
どっちも正しい。

>>811
GBAハックした時は点を一個表示するのが最初だった。
Hello Worldは二番目。

815デフォルトの名無しさん (ワッチョイ 2e23-nBLa)2018/10/19(金) 16:34:20.62ID:2swZl7760
adjtimeって何秒まで調整できるの? 2145秒?

816デフォルトの名無しさん (アウアウウー Sa9f-BMDm)2018/10/19(金) 17:14:10.33ID:gPrGaWTXa
Linuxというかglibcならmanページに書いてあるよ。

817デフォルトの名無しさん (ワッチョイ f380-tM5n)2018/10/19(金) 22:42:18.68ID:zxKaiBZl0
make worldでX立ち上がったときは
感動したものだ

818デフォルトの名無しさん (ワッチョイ 66d5-7cZp)2018/10/20(土) 00:30:32.53ID:o/rPvxpn0
make world ってなんかかっこいいよな

819デフォルトの名無しさん (ワッチョイ ba80-JSR1)2018/10/20(土) 00:33:01.78ID:rwRxHeub0
世界の創造主、いわゆるゴッド

820デフォルトの名無しさん (ワッチョイ be81-xJah)2018/10/20(土) 01:37:49.13ID:/s/GXT/Q0
それで思い出した
プロジェクトでのmakefile、作成が終わった時に
バナー文字で「make end!」って表示するんだけど
ある人のだけは「big cock!」に書き換えてたっけ

ここには関係者いないよね?

821デフォルトの名無しさん (アウアウカー Safb-dUTK)2018/10/20(土) 15:49:24.33ID:Nttc2RvPa
C言語だから、次世代言語(w)よりもコード出るかと思ったら、出ないのな。

822デフォルトの名無しさん (ワッチョイ aebe-fIkj)2018/10/20(土) 21:33:22.48ID:y1kFtLUq0
どうでもいいけど
「w」という名前の言語があるのかと思った。割と本気で調べてしまったw

823デフォルトの名無しさん (ワッチョイ 269f-nBLa)2018/10/21(日) 04:55:52.71ID:sz/a4USN0

824デフォルトの名無しさん (ワッチョイ 7e15-nBLa)2018/10/21(日) 20:05:57.37ID:YP/adz7t0
>>773
近称で自己紹介乙

825デフォルトの名無しさん (ワッチョイ 6ab3-b3y3)2018/10/21(日) 21:20:19.52ID:S2kctYlU0
>>824
ごめん、俺は精神科じゃないし w

826デフォルトの名無しさん (ワッチョイ be81-xJah)2018/10/21(日) 21:28:27.90ID:o3Tx01ZR0
病気の話を持ち出すのは、そういう体験が豊富にあるからだろう

827デフォルトの名無しさん (ワッチョイ 7e15-nBLa)2018/10/21(日) 22:08:00.66ID:YP/adz7t0
>>825
人物と診療科を等値比較とかおまえstd::logic_errorだな

828デフォルトの名無しさん (ワッチョイ 3bb3-xBTp)2018/10/21(日) 22:17:56.29ID:+iExR7UM0
Cでfloat型が表す最小の正の数値を求めるプログラム書いてて、
とりあえず1.175494e-38に近づけるように書いてみてるんだが
printfで値表示させながらやってみると1.175494e-38以下も表示されるのなんで?
環境はgcc5.5.0_1

とりあえず最小判定は初期値1.2e-38を0.000001e-38ずつ減らしていって、
1.175494e-38を抜けるとバカな数字が出てくると仮定してif(a / (b - c) != 1)で判定してる

int main(){
float a = 1.2e-38, b;
float c = 0.000001e-38;

while(1){
b = a;
a -= c;
printf("a=%.6e b=%.6e\n", a, b);
if(a < 0 || b < 0) break;
if((a / (b - c) != 1.0)) break;
}

printf("a=%.8e b=%.8e\n", a, b);
if(b < 1.175494e-38) printf("b is not min value\n");
}

829デフォルトの名無しさん (ワッチョイ 6ab3-b3y3)2018/10/21(日) 22:24:44.10ID:S2kctYlU0
>>827
精神科医のタイポの指摘しかできなくて悔しいね w

定数のマクロあったりしないのか

831デフォルトの名無しさん (ワッチョイ 7e15-nBLa)2018/10/21(日) 23:01:49.92ID:YP/adz7t0
>>829
あ、おまえ間違えたの? アホとヴァカしかやらない間違いだなw

832デフォルトの名無しさん (ワッチョイ f3ea-JQ7R)2018/10/22(月) 00:28:49.01ID:4J0CKskh0
基本情報c言語で受かってた
すごいっしょ

833デフォルトの名無しさん (ワイモマー MM8a-e2v7)2018/10/22(月) 01:24:24.92ID:qPiOMOlUM
>>828
なんかいろいろ勘違いしてないか
>1.175494e-38を抜けるとバカな数字が出てくると仮定して
この仮定がはずれてるから無限ループしてんじゃん

834デフォルトの名無しさん (ワッチョイ 3bb3-FQxm)2018/10/22(月) 01:30:41.57ID:eGJ65JSF0
>>833
int型だとオーバーフローすると馬鹿な数字がでてくるからそう仮定したんだが違うのか
率直に聞くんだけど、この場合どうすればいいの?

835デフォルトの名無しさん (ワッチョイ 8af9-L5c9)2018/10/22(月) 01:41:56.82ID:ao50gEDc0
>>834
バカな数字とかいい加減な理解をしないで、ちゃんとした仕様を調べてみなよ。例えばwikipedia辺りで算術オーバーフローの項目見て全部読んで、分からない語とか関連する語もちゃんと調べるとか。

836デフォルトの名無しさん (ワッチョイ 7e5b-aqc6)2018/10/22(月) 02:29:56.23ID:gc2RKbtu0
>>833
>>835
無限ループはしないけどどんどん値は減っていく。
理由わかるの?828じゃないけど俺も知りたい。

837デフォルトの名無しさん (ワイモマー MM8a-e2v7)2018/10/22(月) 02:49:07.02ID:qPiOMOlUM
>>834
int?
int使ってる?

838デフォルトの名無しさん (ワッチョイ 6ab3-b3y3)2018/10/22(月) 04:47:45.21ID:o0mVKFY/0

839sage (ワッチョイ 3bb3-xBTp)2018/10/22(月) 04:59:16.08ID:eGJ65JSF0
>>837
int型で似たようなこと(最大の正の数値を求める)やろうとしたら、バカみたいな数字が出たってだけだよ

840デフォルトの名無しさん (ワッチョイ ea11-nBLa)2018/10/22(月) 06:47:45.13ID:MQnoZdqg0
>>838
アホw ヴァカwww


>>828
非正規化数(denormal)でぐぐれ

>>841
アホとヴァカを認めやがったw

KYB

>>843
意味のわからん解釈で勝ち誇るとか低能の定番乙 w

846デフォルトの名無しさん (アウアウウー Sa9f-L0SM)2018/10/22(月) 12:59:00.86ID:8WYgXfgna
そろそろコードで語れや

847デフォルトの名無しさん (ワッチョイ ea11-nBLa)2018/10/22(月) 13:28:16.05ID:MQnoZdqg0
>>845
意味わからんのか
よほど高力価のトランキライザーを打たれているようだな
もう末期でオピオイドとかか?
お大事に

848デフォルトの名無しさん (JP 0H1b-xBTp)2018/10/22(月) 15:05:43.37ID:K/0BTgUUH
>>828ですが、参考書やらをみてアンダーフロー・正規化についてしっかり理解したところ、解決しました。

要は、float型のビット表現の仮数部が 0.(仮数部) ではなく 1.(仮数部) で表現されてるから、
その意味では
0|00000001|00000000000000000000000
が最小の正数になるけど、仮数部を 0.(仮数部) と表現しても計算できないことはないから、
0|00000000|10000000000000000000000
もちゃんと表示される、ということだけど、
これ以降ずっと計算していくといずれ
0|00000000|00000000000000000000000
となるから、150回目くらいでアンダーフローが起こる、ということらしい。

>>835>>842ありがとうございました。

>>847
>>845
アホとヴァカとしか言えなくて悔しいね w

850デフォルトの名無しさん (ワッチョイ ea11-nBLa)2018/10/22(月) 21:38:29.05ID:MQnoZdqg0
>>849
そうか、847にアホとヴァカって書いてあるのか
実際には、そう言ってるのはおまえだけなんだが
確かに悔しそうに勝ち誇っているシュールな姿だねw

851デフォルトの名無しさん (ワッチョイ 6ab3-b3y3)2018/10/22(月) 23:25:34.63ID:o0mVKFY/0
>>850
> そうか、847にアホとヴァカって書いてあるのか
> 実際には、そう言ってるのはおまえだけなんだが

ヴァカで検索
>>831 > あ、おまえ間違えたの? アホとヴァカしかやらない間違いだなw
>>840 > アホw ヴァカwww
>>843 > アホとヴァカを認めやがったw
849-850 は指摘なので省略

> 自分にお前だけとかかなりシュールな姿だねw

852デフォルトの名無しさん (ワイモマー MM8a-e2v7)2018/10/23(火) 02:12:44.79ID:hcGdXqLuM
飽きないねぇ・・・

853デフォルトの名無しさん (ワッチョイ ba80-JSR1)2018/10/23(火) 03:28:29.69ID:MMiE9qLz0
>>848
色々違う

854デフォルトの名無しさん (ワッチョイ f364-qPjg)2018/10/23(火) 12:00:30.24ID:cKF5Z2eR0
C言語でLinuxのdmesgやffmpegのログのような着色された分かり易いログ出力ができるライブラリってありますか?
[YYYY-MM-DD hh:mm:ss.ss] INFO: creating some file...
のような形式がいいんですけど、Cだと自作するしかないですかね?

>>854
標準ライブラリにはない
git漁ればあるはず
でもそのぐらいなら自分でチョロっと書けば終わる

色だけだったら制御コード挟むだけでかなり直接的な操作だから、ライブラリ要らんと思うよ

新着レスの表示
レスを投稿する