본문 바로가기
VisualStudio.C++.C#/코딩팁,함수활용,단편

memmove. 배열 시프트.

by i.got.it 2016. 10. 14.

 

memove(*dest, *src, bytesize)

 

1. 메모리 주소 *src 부터 bytesize만큼의 데이터를 주소 *dest 에 복사한다.

 -  내부동작 : *src 부터 bytesize만큼의 데이터 를 별도의 메모리에 옮겨뒀다가  *dest 지점 부터 복사

2. 상기 1의 특성 때문에 배열 요소의  시프트 처리시 유용.

 

 

배열 시프트 처리.

 

배열 int  arr[100],  요소값들은 모두 오른쪽으로 1칸 이동시키는 경우, 

 

1. for 루프를 사용하는 경우,

 

for(i=0; i<99;i++)

{

  arr[i+1] = arr[i];

}

 

2. memove 이용하는 경우,

 

memmove(arr+1, arr,sizeof(int)*99);

 

 

memmove가 for 루프보다  빠르다.

 

 

 

 

연관

 

 

memcmp, memcpy, memset

헤더 : string.h int memcmp(주소1, 주소2, 바이트사이즈); 주소1과 주소2를 시작점으로 하여 바이트사이즈 만큼의 메모리 기록 된 값이 같으면 0 , 다르면 0 아닌값 반환. 주소1의 값 < 주소2의 값 이면 0

igotit.tistory.com

 

 


첫 등록 : 2016.10.14

최종 수정 : 

단축 주소 : https://igotit.tistory.com/1013


 

 

 

 

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5