自分のマシンでコードを実行すると、期待どおりに動作します。
同僚に実行すると、誤動作します。これが起こることです。
次の値の文字列があります:
croc_data_0001.idx
strncpy
コピーした文字列の長さが18である文字列に対して、を実行すると、次の値になります。
croc_data_0001.idx♂</p>
私が次のことをすると
myCopiedString[18]='\0';
puts (myCopiedString);
コピーされた文字列の値は次のとおりです。
croc_data_0001.idx
この問題の原因は何でしょうか。また、最後の文字をに設定することで問題が解決するのはなぜ\0
ですか。