*プログラミングtips [#paec5fd6] 基本的なお役立ち情報 とか.主にCとPerl. **[Linux] シェルから拡張子を取り除いたファイル名を取得する(Bash) [#ocf49b7e] -abc.txt から abc のみを得たい場合 -ワイルドカードを利用したforループをするとき等に便利 -例: カレントディレクトリに「abc.txt」「def.txt」「ghi.txt」が存在する場合 #prettify{{ $ for file in *.txt > do > echo ${file%.*} > done }} 変数名の隣に「%.*」を加えることで拡張子を取り除くことができる #prettify{{ abc def ghi }} -参考: bashスクリプトだけで、ファイル名、拡張子を取得する - 作業ノート : http://d.hatena.ne.jp/te2u/20090327/p1 **[C] Windows x64 + MinGW + gcc で long double の挙動がおかしい? [#c8c3231f] -MinGW + gcc 環境で,long double 型の変数を printf するとおかしい数値が表示される問題.( 19690185614481596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.000000とか) -原因は MinGW が Microsoft の msvcrt.dll に依存していて,long double を double と同じビット数であると認識してしまうことによるもの. -解決策として,printf を __mingw_printf に書き換えればOK #prettify{{ #define printf __mingw_printf }} とする. -参考: c - printf and long double - Stack Overflow : http://stackoverflow.com/questions/4089174/printf-and-long-double **[Perl] 変数の初期化 [#v67bdb83] #prettify{{ my $a = 0; $a++; print $a; # 1 }} と #prettify{{ my $a; $a++; print $a; # 1 }} と #prettify{{ my $a++; print $a; # 1 }} は同じ.