c++の memcpy の実装についてです
c++
void * memcpy( void * dest, void const * src, std::size_t n ) { // destをstd::byte *型に変換 auto d = static_cast<std::byte *>(dest) ; // srcをstd::byte const *型に変換する auto s = static_cast<std::byte const *>(src) ; // srcからnバイトコピーするのでnバイト先のアドレスを得る auto last = s + n ; // nバイトコピーする while ( s != last ) { *d = *s ; ++d ; ++s ; } // destを返す return dest ; }
1: destはアドレスの値の数値で4バイト(自分の環境だと)だがstd::byte *型は1バイトなので型変換したらどうなるのでしょうか?
2: d,sはアドレスを表していると思うのですが*d,*sは何を表しているのでしょうか?
まだ回答がついていません
会員登録して回答してみよう