미리 보고 오면 좋은 자료
memset() 함수란?
메모리의 특정 영역을 원하는 값으로 채우는 함수
Why Used?
메모리를 한 번에 초기화하기 위해 사용
함수 원형
void *memset(void *ptr, int value, size_t num);
| 파라미터 | 설명 |
| ptr | 값을 채울 메모리 시작 주소 |
| value | 채울 값 (1바이트 단위로 적용됨) |
| num | 채울 바이트 크기 |
memset(arr, 1, sizeof(arr));
0x01 (1바이트 값)을 계속 채우는 것 (value에)
파일 헤더
#include <string.h>
사용 예시
// 배열 0으로 초기화
int arr[10];
memset(arr, 0, sizeof(arr));
// char 배열 초기화
char str[20];
memset(str, 'A', sizeof(str));
// 기대하는 값 [1, 1, 1, 1, 1]
// 실제로는 [0x01, 0x01, 0x01, 0x01, 0x01]
// 값을 읽을 때, int로 읽으므로 0x01010101로 해석되어서 나와 이상한 값이 출력 됨
int arr[5];
memset(arr, 1, sizeof(arr));
'정글캠프-WIL > C언어' 카테고리의 다른 글
| [C언어] - 운영체제 ptov() 함수 (0) | 2026.04.26 |
|---|---|
| [C언어] - va_list 자료형 (1) | 2026.04.25 |
| [C언어] - connect() 함수 (0) | 2026.04.23 |
| [C언어] - accept() 함수 (0) | 2026.04.23 |
| [C언어] - listen() 함수 (0) | 2026.04.23 |