質問: C言語4ヶ月目でマルチスレッド勉強中の初心者です。 C言語の標準関数でwindowsではスレッドセーフだけど linuxではスレッドアンセーフのような OSによってスレッドセーフ・アンセーフが変わるようなものってありますか?
回答: そのあたりは、だいたい仕様書で決まっていると思うので、コンパイラが仕様を無視していなければないと思います。 ただ、コンパイルをWindowsの「Visual Studio」でやっているなら、linuxのコンパイラでエラーになる可能性はあります。 WindowsのC言語コンパイラは、C言語の仕様書にない独自の物が入っていたり、タイピングを楽にするために、本来書くべきなのに、書かなくても勝手に判断してくれたりすることがあるので、C言語だけどC言語じゃない感じですね。