- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 재능이의 돈버는 일기
- StresslessLife
- K_JIN2SM
- 소소한 일상
- My Life Style & Memory a Box
- Blog's generation
- 공감 스토리
- 취객의 프로그래밍 연구실
- Love Me
- Dream Archive
- 세상에 발자취를 남기다 by kongmingu
- hanglesoul
- 카마의 IT 초행길
- 느리게.
- 미친듯이 즐겨보자..
- Joo studio
- Gonna be insane
- 악 다 날아갔어!! 갇대밋! 왓더...
- xopowo05
- 맑은공기희망운동
- 엔지니어 독립운동
- 혁준 블로그
- Simple in Complex with Simple
- 무의식이 의식을 지배한다
목록★─Programing/☆─C | C++ (76)
드럼치는 프로그래머
memset()과 ZeroMemory() 질문: 거의 같은 기능인 것 같은데 memset()함수와 ZeroMemory() 함수의 차이점을 알고 싶습니다. 답변: 음... Memset의 경우는 메모리를 인자로 받은 char 형 변수(1byte)로 채워주는 것이구요. ZeroMemory는 메모리를 0으로 채워준다는 것이 다릅니다. memset()과 ZeroMemory()의 오버헤드 차이는 없구요. 좀더 0으로 채우는걸 강조하고 싶다면 ZeroMemory()를 사용하시면 되겠죠?^^
memset 메모리를 지정한 문자로 채웁니다. Declaration void *memset( void *dest, int c, size_t count ) Return value 성공 - 채워진 메모리 주소(dest 매개 변수) 반환 실패 - 없음 Parameters dest - 채울 메모리의 주소 c - 채울 문자 count - 채우려고 하는 문자 개수 Detail descriptions memset()는 버퍼를 똑같은 "문자"로 채울 때 사용합니다. 명확하게 문자라고 표현했듯이 단위는 바이트입니다. memset()는 문자를 저장하는 char 배열뿐만 아니라 모든 종류의 배열에 대해서 사용할 수 있습니다. 그러나, 단위가 바이트이기 때문에 배열 요소의 자료형에 따라 세심한 주의가 필요합니다. 대부분의 배..
보호되어 있는 글입니다.
%s형식지정자의 역할을 보기위해 다음 프로그램을 실행시켜 본다. 질의가 나오면, this is a test라고 타이핑하고 엔터키를 입력한다. 단지 this만이 화면에 다시 나타나는 것을 보게된다. 이것은 scanf()가 문자열을 읽을 때 공백, 탭, 혹은 뉴라인 문자를 만나면 읽는 것을 멈추기 때문이다. #include int main(void) { char str[80]; printf("enter a string: "); scanf("%s", str); printf(str); printf("\n"); return 0; } 다음은 대문자와 소문자 모두를 받아들이는 스캔셋의 예이다. 영문자 몇개를 입력한 다음, 다른 하나의 문자, 그리고 몇개의 영문자를 입력한다. 엔터키를 치면, 영문자가 아닌 문자 앞에 ..
출처:francis__kim char *my_strtok(char *str, char *delim) { static char *org = NULL; // 토큰분리시작점. // 토큰계속분리요청시(NULL로 호출) 이전 정보를 // 보관하고 있어야 하므로 static으로 선언. static char *tracer = NULL; // 분리문자를 찾아가기위한 변수 // 연속처리에 사용하기 위하여 static으로 선언 char *pdelim; // 분리문자 비교를 위한 변수 // 새로운 문자열이 들어 오면 static 변수에 등록 if (str != NULL) tracer = str; // 분리문자가 없으면 분리할 방법이 없으므로 NULL로 반환 if (delim == NULL || *delim == NULL) ..
#include #include void main() { int **pp; //5행 4열 배열 포인터 크기 잡기~! int m=5, n=4; //행먼저 pp = (int**)malloc( m * sizeof(int) ); //열 for(int i=0;i행삭제 for( i = 0; i
고급 C/C++ 언어 프로그래머가 가장 많이 사용하는 것이 포인터다. 잘만 사용하면 효율적인 프로그램 도구가 될 수 있으나, 일반 사용자 입장에서는 그만큼 이해하기 어려운 개념이 바로 포인터다. 배열과 구조체는 데이터 여러 개를 묶었다는 의미에서 군집 데이터 타입이라 불린다. 이 두 가지는 기본적인 자료구조 형태로서 중요한 역할을 한다. 01 포인터 포인터란 문자 그대로 어떤 변수를 가리키는 것을 말한다. 포인터는 그것이 가리키는 변수의 주소 값을 저장한다. 포인터 변수에는 주소 값만이 저장 될 수 있다. 포인터를 일명 핸들이라고도 한다. 1_ 동적 메모리 할당 메인 메모리의 모든 변수에는 주소 값이 있다. int *p;는 "p가 가리키는 것은 정수 타입"이라는 뜻이다. 애스터리스크(Asterisk, *..
C에서 가장 유용하게 사용할 수 있는 검색 함수가 있다. 바로 strstr()이다. 이 함수는 어떤 문자열 내에서 한 문자열이 처음으로 나타나는 위치를 찾고 문자열 내에서 개별적인 문자들이 아니라 전체 문자열을 찾는다. char *strstr(char *str1, char *str2); 함수 strstr()은 str1에서 처음으로 나타나는 str의 위치에 대한 포인터를 돌려준다 일치하는 내용이 발견되지 않으면 함수는 NULL을 돌려준다. str1에 있는 str2의 상대적인 위치를 알 수 있다. strstr()은 대소문자를 구분하여 문자열을 검색한다. #include #include void main() { char str1[20] = "pretty girl"; char str2[20] = "girl"; ..
if 문을 쓰는 경우는 조건안에 연산식등을 넣을 수 있어 성적처럼 어떤 범위를 제한하고 조건연산을 하기에 쉽습니다. switch 문은 실제 분기가 숫자로 일치하는 경우에 분기합니다. 그렇기때문에 일치하지 않을 경우 처리를 위해 default 분기가 필요합니다. switch 문은 state machine 에서 많이 사용합니다. 주로 자판기 알고리즘을 예로 많이 드는데 동전을 넣기 전 : 동전대기 동전을 넣는중 : 실제넣어진금액 계산과 음료수가격비교 버튼입력 대기중: 버튼 및 동전 대기 음료수 나오기 : 잔돈계산과 음료수 나오기 종료 : 다시 대기상태로... 대충 이런식으로 각 상태에서 머물면서 다른 상태로 이동하는 시스템을 말합니다. 각 상태를 좀더 세분화할 수는 있지만 다른 상태는 가질 수 없습니다. 각..
#include int main(void) { int state; /* 파일의 개방 */ FILE * file = fopen("Test.txt", "wt"); if(file==NULL){ printf("file open error!\n"); return 1; } /* 파일의 종결 */ state=fclose(file); if(state!=0){ printf("file close error!\n"); return 1; } return 0; }