본문 바로가기

반응형

C

(51)
[C] 메모리 공간의 할당과 초기화가 동시에 일어나는 상황 출처 - 열혈 C++ 프로그래밍​#include int SimpleFunc(int num);int main(){ int num = 10; // 여기 SimpleFunc(num); return 0;}int SimpleFunc(int num) // 여기{ return num; // 여기} 이렇게 3군데에서 메모리 공간이 할당되면서 동시에 초기화가 이루어진다. (C++에서 객체도 마찬가지)​main 함수에서 int num = 10; 이 부분이야 당연히 알거고...​int SimpleFunc(int num) 이 부분에서는 함수가 호출되고 매개변수로 선언된 변수들​메모리가 할당됨과 동시에 인자로 받아온 값으로 초기화가 된다.​​​문제는 SimpleFunc 함수 내부에 있는 return num; 이부분이다.​값을 ..
[C] scanf 함수 char형 하나의 문자 입력받을 시 발생하는 문제 아래와 같은 코드를 실행시켜 보면#include int main(void){ char str[30] = {0}; char ch = 0; scanf("%s", str); scanf("%c", &ch); printf("%s\n", str); printf("%c\n", ch); return 0;} 사용자가 "abc"를 입력했을 경우 "abc"를 str에 입력받고나서​ch에 입력받을 문자를 사용자가 입력 하기를 기다려야 되는데 그냥 넘어가 버린다.​이유는 사용자가 "abc"를 입력할 때 입력되는 문자열은 정확하게는 "abc(enter)"이다.​이 때문에 str에 "abc"가 입력이되고 입력버퍼에는 "(enter)"가 남아있게 된다. (엔터가...)​그래서 ch에 하나의 문자를 입력받을 차례에 이 "(enter)..
[C] C언어의 메모리 구조 (스택, 힙, 데이터, 코드 영역) 출처 - http://blog.naver.com/PostView.nhn?blogId=sealriel&logNo=10121467341​​​C 언어의 메모리 구조는 크게 스택 영역(Stack Area), 데이터 영역(Data Area), 코드 영역(Code Area), 힙 영역(Heap Area)있다.​​​스택 영역(Stack Area)스택 영역은 프로그램이 동작 시 지역변수, 매개변수, 표준버퍼, 시스템(OS) 임시데이터가 생성되고 사라지는 영역이다.​예를 들어 int, char, double, void, float 등 기본 자료형 과 if, for, while 등의제어문의 내부에서 선언된 변수는 제어문을 빠져나오면 수명이 다한다.​함수의 호출시 매개변수나, 함수의 내부에서 사용되는 지역변수도 마찬가지이다..
[C] A.txt 내용을 정렬하여 B.txt로 출력 #include #include #include int _tmain(int argc, LPTSTR argv[], LPTSTR *env){ system("sort B.txt"); return 0;}
[C] A.txt 내용을 정렬하여 콘솔에 출력 #include #include #include int _tmain(int argc, LPTSTR argv[], LPTSTR *env){ system("sort
[C] Thread 사용 예제 #include #include #include #include #include unsigned WINAPI ThreadProc(LPVOID lpParam); // Thread Func 함수 형식이 반드시 이와 같아야 함.int _tmain(int argc, LPTSTR argv[]){ _tsetlocale(LC_ALL, _T("Korean")); // 유니코드에서 한글 출력을 위한 코드 DWORD dwThreadID[3] = {0}; HANDLE hThread[3] = {0}; for(int i = 0; i
[C] 파일 속성의 만든 날짜, 수정한 날짜, 액세스한 날짜 얻고 수정하기 #include #include #include #define STRING_LEN 100int _tmain(int argc, LPTSTR argv[]){ TCHAR fileName[] = _T("data.txt"); TCHAR fileCreateTimeInfo[STRING_LEN] = {0}; TCHAR fileAccessTimeInfo[STRING_LEN] = {0}; TCHAR fileWriteTimeInfo[STRING_LEN] = {0}; FILETIME ftCreate = {0}, ftAccess = {0}, ftWrite = {0}; SYSTEMTIME stCreateUTC = {0}, stCreateLocal = {0}; SYSTEMTIME stAccessUTC = {0}, stAccessL..
[C] 뇌를 자극하는 윈도우즈 시스템 프로그래밍 명령 프롬프트 프로젝트 코드 다운로드  내 생각대로 한거라 책 예제 코드와는 다름

반응형