>警告 4 warning C4996: 'strcpy' が古い形式として宣言されました。
という警告がでました。
'strcpy'の新しい形式とはなんでしょうか?
VC2005です。
マニュアル(MSDN)に明記されています。
http://msdn2.microsoft.com/ja-jp/library/kk6xf663(VS.80).aspx
...セキュリティが強化されたバージョンが使用可能になったので、これらの関数は使用されなくなりました。「strcpy_s、wcscpy_s、_mbscpy_s」を参照してください。
_tcscpy(
の代わりに
どれをしていしてやってもエラーが増えるだした!
なにがいけないのでしょうか?
_tcscpy_s じゃまいか。
エラー 24 error C2660: 'strcpy_s' : 関数に 2 個の引数を指定できません。
というエラーが出ます。
というエラーがでますが?
おねがいだからマニュアルを読んでください。
ちがうんです。
1個の引数をしていしてあげても
>エラー 24 error C2660: 'strcpy_s' : 関数に 1 個の引数を指定できません。
というエラーがでるんです!
何が違うのかが全然解らないのですが。
とりあえず,やっぱりMSDN読んでください。
strcpy_sの引数は3個あります。1個の物は存在しません。
同じようなことをしてくれるからと言って、関数の引数・戻り値が同じとは限りませんよ?
まずは皆さんの言うとおり、MSDNでstrcpy_s関数をごらんになった方が良いと思います。
ありがとうございます!みなさん!
三個の引数ですね!
errno_t strcpy_s(
char *strDestination,
size_t numberOfElements,
const char *strSource
);
と書いてありますが
どういう風に指定してあげればいいかわかりません。
どなたか教えていただけるとありがたいのですが?
マニュアルに明記されています。
ここ読んでください。
http://msdn2.microsoft.com/ja-jp/library/td1esda9(VS.80).aspx
strDestination
コピー先の文字列バッファの場所。
numberOfElements
コピー先の文字列バッファのサイズ。
strSource
null で終わる元の文字列バッファ。
わかりましたgoさん!
ありがとうございました!
ツイート | ![]() |