私はstrcpyのCの関数を再発明しようとしましたが、私はそれを実行しようとすると、私はこのエラーを取得する:strcpyを使用するとアクセス違反ですか?
Unhandled exception at 0x00411506 in brainf%ck.exe: 0xC0000005: Access violation writing location 0x00415760.
エラーが*dest = *src;
行で発生します。コードは次のとおりです。
char* strcpy(char* dest, const char* src) {
char* dest2 = dest;
while (*src) {
*dest = *src;
src++;
dest++;
}
*dest = '\0';
return dest2;
}
編集:うわー、それは速かった。ここでは、呼び出し元のコードは、(strcpyのはmystring.cで定義されている)です。
#include "mystring.h"
#include <stdio.h>
int main() {
char* s = "hello";
char* t = "abc";
printf("%s", strcpy(s, t));
getchar();
return 0;
}
どのように実装を呼び出していますか?そのコードは役に立ちます。 – Jason
男、それは素早い答えの束だった。オーバーランバッファの世界へようこそ。 :) – Craig
どうやってそれを呼んでいますか? –