2011|08|
2013|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|05|06|07|08|09|10|11|12|
2016|01|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|

2014-05-22 Windows7で2GBの壁を破るプログラムを作る(c/c++)

流石は研究員。情報が早い!

■Windows開発に詳しい知人に聞いてみました。
■プログラムのメモリ制限が2GBというのは正しいですが、
- 32bit OS + 32bit アプリ → 2GB制限
- 64bit OS + 32bit アプリ → 2GB制限
- 64bit OS + 64bit アプリ → 制限なし
ということだそうです。
■MinGWは32bitのバイナリを生成する(64bit未対応)ため、
上記の通り2GBの制限ができてしまうとのことです。
これを回避するために64bit対応のコンパイラが必要、とのこと。
■MinGWに限るならこれを試してみたら?とおすすめ(?)
されました。
MinGW-w64
http://mingw-w64.sourceforge.net/
http://sourceforge.jp/projects/sfnet_mingw-w64/

うん、びっくりした。軽く2GBを破った。

では、インストール手順を忘れないうちに。

(Step.1)http://sourceforge.net/projects/mingw-w64/
(Step.2)"Browse All Files"→"Toolchains targetting Win64"→"Personal Builds"
(Step.3)mingw-w64-bin_x86_64-mingw_20111101_sezero.zipをダウンロード、展開。
(Step.4)c:の直下に"c:\mingw64"として置く。
(Step.5)"c:\mingw64\bin"のpathを通す。
(Step.6)後は適当に、gcc -g test.c -o test などとしてコンパイルする。

2018-05-22 Restrictive relative clauses 制限的関係節

出展:https://plaza.rakuten.co.jp/shimpeichen77/diary/201111020004/

 
■Restrictive relative clauses 制限的関係節
■Non-restrictive relative clauses 非制限的関係節
というのがある。
 
これだけ聞くと何だかサッパリわからない。
 
例文
(1) My sister who lives in New York works for Donald Trump.
 
(2) My sister, who lives in New York, works for Donald Trump.
 
この2つの文章の意味は全く違う。
(1)"私のNYに住んでいる妹はDonald Trumpで働いている"
→つまり妹が何人かいて、そのうち1人がNYに住んでいる
(2)”私の妹は、ニューヨークに住んでいて・・・”
→つまり妹は1人、その妹はNYに住んでいる
 
(1)のwho lives in New York はこの文章に絶対に必要な情報なので
カンマで区切ってはいけない。(=Restrictive relative clauses )
(2)のwho lives in New York はなくてもいい補足情報なので
カンマで区切る。(=Non-restrictive relative clauses )
 
よく論文でも、
前の語を"which is..."と説明することがあるが原理は同じ。
 
■まとめると、
・A who is B → Bは必要不可欠
・A, who is B, → Bはオマケ
(※ whichの場合も同じ)