rustで配列をコピーする以下のようなコード
これをコピー先とコピー元をあえて重複させてエラーを出したいのですが
rust
1fn main(){ 2 let buf =[1,2,3,4,5]; 3 let mut buf2=[0;5]; 4 5 memcpy(&mut buf2,&buf,buf.len()); 6 7 println!("{:?}",buf2); 8} 9 10fn memcpy(dst:&mut[u8],src:&[u8],n:usize){ 11 for i in 0..n{ 12 dst[i]=src[i]; 13 } 14}
以下のようにbufの先頭から一つずらしたところにコピーしようとすると、整数を加えられないというエラーがでます。ほかにbufの+1ところにアクセスする方法などはあるのでしょうか
rust
1fn main(){ 2 let mut buf =[1,2,3,4,5]; 3 let mut buf2=[0;5]; 4 5 memcpy(&mut buf+1,&mut buf,5); 6 7 println!("{:?}",buf); 8} 9 10fn memcpy(dst:&mut[u8],src:&mut[u8],n:usize){ 11 for i in 0..n{ 12 dst[i]=src[i]; 13 } 14}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/18 11:27 編集