Home » Archives for 4月 2017
[Windows] パイプでつないだコマンドはサブシェルで実行される
echo foo | set /p x= で x は設定できない [Windows] コマンドプロンプトで文字列入出力のTips では改行なしのメッセージを set /p を使って出力した。 >set /p x=hello<nul & echo worl...
[Java] Streamで例外処理を扱う
UncheckedIOException Java8から UncheckedIOException という例外が追加されている。 https://docs.oracle.com/javase/jp/8/docs/api/java/io/UncheckedIOExcepti...
[C] ポインタのアドレス参照範囲と未定義処理
不正ポインタ CでNULLポインタや解放済みのメモリ領域を指すポインタ(ダングリングポインタ)を参照すると、未定義の動作となる。 バッファオーバーランとかの書き込みではなく、厳密にいうと参照だけで未定義動作になるんだね。 ただし、ポインタが指している領域ではなく、ポインタ...
[C] マクロトークンの文字列化
マクロの文字列化演算子 Cのマクロで数値定数が存在する場合にログに数値のみではなく、定数名を出力したい場合がある。 こういうときはマクロの文字列化演算子(#)を使う。 #define STR(S) #S #define ORANGE 1 #define APPLE ...