Backend/C

memset()을 이용하여 메모리를 채워보자

petitCoding 2011. 5. 20. 17:25
 

1. 함수원형

 

void *memset(void *s, int c, size_t n);

 

2. 기능

 

s가 지정하는 번지에 c값을 n의 크기만큼 채움

c는 int형이지만 1바이트(char)로 인식된다.

 

3. 리턴값

 

s의 포인터

 

4. 예제

 

<소스코드>

 

1 : #include <stdio.h>
2 : #include <stdlib.h>
3 : #include <memory.h>

4 : #define SIZE 50

5 : int main(void){

6 :      
7 :        int *s = (int*)malloc(sizeof(int)*SIZE); //메모리 할당
8 :        int i;
9 :  
10 :      memset(s,'r',sizeof(int)*SIZE);
// s가 가리키는곳을 'r'로 채운다

11 :     

12 :      for(i=0;i<SIZE;i++){
13 :            printf("%d : %c\n",i, s[i]);
//화면에 복사된 내용출력

14 :      }

15 :      free(s);
16 :      return 0;
17 : }

 

<결과화면>


반응형

'Backend > C' 카테고리의 다른 글

valgrind  (0) 2011.05.26
gprof  (0) 2011.05.26
GDB  (0) 2011.05.26
memcpy()를 이용한 메모리 카피!  (0) 2011.05.20
Valgrind로 메모리 누수 체크하기!!  (0) 2011.05.13