memset 함수 정의 및 사용
967 단어 프로그래밍 함수
#include
void * memset ( void * ptr, int value, size_t num );
2. 매개변수 설명:
ptr: 임의의 종류의 바늘을 가리키며 우리가 수정해야 할 대상을 가리킨다. 예를 들어 하나의 그룹의 첫 번째 주소 buff가 들어오는 것을 가리킨다
value: ptr가 가리키는 대상에 부여하는 값
num: ptr가 가리키는 대상의num 바이트를 모두value로 대체하시겠습니까?
size_t:unsigned int 유형
3. 적용
(1) 간단한 사용
char buffer[] = "this is a string!";
memset(buffer,'0',4);
printf("%s",buffer);
출력 결과: 0000 is a string
설명: 버퍼 그룹의 4 바이트 문자를 모두 '0' 으로 설정합니다
(2) 배열 비우기
char buffer[] = "this is a string!"
memset(buffer,0,sizeof(buffer));
printf("%s",buffer);
결과 없음
이 코드의 뜻은 버퍼 그룹의 모든 바이트를 비운다는 것이다
4. 문제점 남기기
int p = 23;
int *q = p;
memset(q,65,sizeof(int));
printf("%d",p);
printf("%c",p);
결과: 1794795585
A
왜?