トップページ > プログラム > 2014年08月25日 > OTL7uAT+

書き込み順位&時間帯一覧

2 位/181 ID中時間01234567891011121314151617181920212223Total
書き込み数00500000000000001131100012



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
くだすれPython(超初心者用) その24
【GUI】wxWidgets(旧wxWindows) その5【サイザー】
WPF(XAML, XBAP, .NET4.5)GUIプログラミング Part17
Git 10
Visual Studio 2013 part4
D言語 Part33

書き込みレス一覧

くだすれPython(超初心者用) その24
207 :デフォルトの名無しさん[sage]:2014/08/25(月) 02:10:28.08 ID:OTL7uAT+
>>149 >>151 >>160 >>171
readlinesって一旦全部メモリに読んでるの?
最近のpythonだとgeneratorにしてくれてるんじゃなくて?

>>161
だよね
【GUI】wxWidgets(旧wxWindows) その5【サイザー】
656 :デフォルトの名無しさん[]:2014/08/25(月) 02:12:21.61 ID:OTL7uAT+
OnClose
OnVeto
WPF(XAML, XBAP, .NET4.5)GUIプログラミング Part17
937 :デフォルトの名無しさん[]:2014/08/25(月) 02:16:18.36 ID:OTL7uAT+
Google Apps Script ってどう?
Git 10
466 :デフォルトの名無しさん[sage]:2014/08/25(月) 02:23:05.61 ID:OTL7uAT+
情報の量質共にネット以下のくだらない本が増えたのも事実
Visual Studio 2013 part4
501 :デフォルトの名無しさん[sage]:2014/08/25(月) 02:26:43.06 ID:OTL7uAT+
このスレで言うのもなんだけど
メイン側ならDがいいよ
D言語 Part33
421 :デフォルトの名無しさん[sage]:2014/08/25(月) 16:11:10.14 ID:OTL7uAT+
質問です
import std.stdio;
import std.datetime;
int main(string[] args)
{
uint t = 1408960000;
writeln(SysTime(unixTimeToStdTime(t)).toISOExtString());
writeln(SysTime(t * 1000 * 1000 * 10L).toISOExtString());
writeln(SysTime(cast(ulong)t * 1000 * 1000 * 10L).toISOExtString());
return 0;
}

2014-08-25T18:46:40
0001-01-01T09:04:33.514496
0045-08-25T18:46:40

と表示されます
1行目以外が正しい値にならないのはいいのですが、
2行目と3行目の値が全然違うのはそういうもんなんですか?
Cみたいに演算時に整数の拡張は自動では行われないのですか?
D言語 Part33
423 :デフォルトの名無しさん[sage]:2014/08/25(月) 17:09:19.63 ID:OTL7uAT+
ああやっぱりうまく伝わらなかったみたいです
ヘクトナノ秒(hnsecs)であることとepochが違うことは理解してます
なので1000*1000*10Lを掛けても値が3つ同じにならないのも理解してます
気にしているのは
1行目≠2行目とか1行目≠3行目とかの話ではなくて
2行目≠3行目になっていることです
D言語 Part33
427 :デフォルトの名無しさん[sage]:2014/08/25(月) 18:08:21.31 ID:OTL7uAT+
>>425
トン
writeln(SysTime(t * 1000L * 1000 * 10).toISOExtString());
これなら3行目と同じになったわ
確かにCと違うぞゴルァってのは筋違いですね
でもちょっと違和感
D言語 Part33
429 :デフォルトの名無しさん[sage]:2014/08/25(月) 18:20:45.87 ID:OTL7uAT+
コンパイル時に定数として評価されずに
実行時に計算してるってことかな

>>428
逆のような気がするんです
D言語 Part33
431 :デフォルトの名無しさん[sage]:2014/08/25(月) 18:41:56.48 ID:OTL7uAT+
pragma(msg, typeof(unixTimeToStdTime(t)));
pragma(msg, typeof(t * 1000 * 1000 * 10L));
pragma(msg, typeof(t * 1000L * 1000 * 10));
pragma(msg, typeof(cast(ulong)t * 1000 * 1000 * 10L));

assert(t * 1000 * 1000 * 10L == t * 1000L * 1000 * 10);

なるほど
すごく勉強になりました
D言語 Part33
433 :デフォルトの名無しさん[sage]:2014/08/25(月) 19:04:58.16 ID:OTL7uAT+
assert(1000 * 1000 * 10L == 1000L * 1000 * 10); // success
assert(t * 1000 * 1000 * 10L == t * 1000L * 1000 * 10); // failure
後半はあきらかに定数なのでコンパイル時にlongとして見てくれてれば
どっちでも問題なくなる気がするんだけど
実行時に逐次計算する仕様になってるのは
いろいろ事情があってのことだと思うので
Dはそういうものだと理解しておきます
くだすれPython(超初心者用) その24
212 :デフォルトの名無しさん[sage]:2014/08/25(月) 20:01:33.97 ID:OTL7uAT+
漏れも聞こえた気がする


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。