본문 바로가기

[ Program ]/CC++MFCAPI14

CString 의 구조 궁금해서 찾아보니 이런 문서가 있군요 2014. 6. 11.
c언어 콘솔프로그램 종료대기시키기 콘솔로 연습하다가 실행파일로 결과를 확인하려고 하니 마구닫혀버린다. 그래서 찾은게 아래 #include 추가후 메인함수가장 마지막줄에 아래 둘중아무거나 하나를 넣어주면 키를 누르면 종료되게 된다. system("pause"); //system("pause > nul"); 2014. 6. 4.
비주얼스튜디오(vs) 에서 c 프로젝트 만드는법 파일 > 새로만들기 > 프로젝트 c++ 안에있는 win32 에서 콘솔 응용프로그램을 선택해줍니다. 그럼 요런설정하는 창이뜹니다. 여기서 콘솔 응용프로그램에 빈프로젝트 선택하고 마침을 눌러줍니다. 그러면 이렇게 프로젝트가 딱! 생깁니다. 이제 소스파일에서 오른쪽 눌러 추가 새항목을 눌러주면 요런창이 뜨는데 여기서 c++ 파일 선택하고 중요한게 이름 정해줄때 .c 를 붙여야 합니다. 안붙이면 기본 cpp 파일로 생성 됩니다. 이렇게 해서 파일 만들어지면 void main() { } 을 적어주고 디버깅해보시면 됩니다. vs 버전과 환경에 따라 빌드가 안되는 경우도 있는데 메니페스트 바꿔주고 그런걸로 해결이 가능합니다. 에러상태를 그대로 복사해서 네이버에 붙여넣으면 답들이 나옵니다! 2014. 2. 28.
정적 MFC DLL 만들기, 만든 DLL 사용해보기 출처 - http://blog.daum.net/_blog/BlogTypeView.do?blogid=0H1fk&articleno=4#ajax_history_home DLL 만들기 라고 검색해 보았는가? 당연히 검색 해봤으니 이 글도 읽게 되겠지?? ㅋㅋㅋㅋㅋㅋ 오만가지 방법이 다나온다 명시적으로 내보내기, def로 내보내기, ......암튼 널려있다 해보니 전부 잘되던가? 아니 안되는게 태반이다 블로그에 올라온 글들이 사실 많은걸 감추고 있기 땜시 다 까발리면 밥줄 끊길까봐? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 진담이다. 난 하수라 밥줄 끊길일 없으니 자세히 써주시것다. 일단 비쥬얼 스튜디오 2010 기준이고 다른버전은 테스트 안해봤다. 그러니 하수인 것이다. 친절하게 스샷 노가다로 설명 하시것다. .. 2013. 3. 14.
C 포인터, 확실히 알자(5) - Call by Reference Sizuha`s Bit Essay | 시즈하 http://blog.naver.com/bitessay/130008682534 아시다시피 C언어는 main() 그 자체도 함수(Function)인 것처럼, 뼈속까지 함수를 기본 단위로 해서 프로그램을 구성하고 있습니다. (객체지향 언어에서는 객체(Object)가 하나의 구성 단위이듯이 말이죠.) C에서 함수는 하나의 기능을 수행하는 단위로 볼 수 있는데, 함수가 뭔가의 일을 해내기 위해서는 대게의 경우 그 작업에 필요한 뭔가의 데이터를 같이 전달해 줘야 합니다. 그것이 바로 인수(Argument)라고 불리는 것들이죠. 그런데 이렇게 함수에게 인수를 전달하는 방법에는 여러가지가 있습니다. 그치만 가장 많이 쓰이는 방법은 '값에 의한 호출(Call by Value.. 2012. 9. 14.
C 포인터, 확실히 알자(4) - 함수와 포인터 Sizuha`s Bit Essay | 시즈하 http://blog.naver.com/bitessay/130008099909 . 포인터, 다시 들여다 보기 지난 강좌에서, 저는 포인터를 메모리상의 주소(Address)를 다루는 변수라고 정의했습니다. 이말은 즉, 메모리에 올라갈 수 있는 것이라면 그 어떤 것이든 포인터를 이용해서 접근할 수 있다는 얘기가 됩니다. (이론상으로...) 우리는 주로 메모리에는 데이터가 있다고 생각합니다. 자료를 담는 변수, 배열, 구조체 등의 자료구조들 역시 메모리라는 공간 안에서 관리되는 것이죠. 그래서 지금까지는 변수와 배열을 다루는 포인터에 대해서 이야기해왔습니다. 그런데, 우리가 작성한 프로그램 코드는 대체 어디에 존재하는 걸까요? 네, 당연히 메모리입니다. 그 어떤 프.. 2012. 9. 14.
C 포인터, 확실히 알자(3) - 문자열과 포인터 Sizuha`s Bit Essay | 시즈하 http://blog.naver.com/bitessay/130008057621 서론 C 언어에서는 기본적인 자료형인 배열(Array)과 문자열(Stirng)을 다루는 것 조차도 포인터를 이해하지 않으면 안될만큼, 언어차원에서 포인터의 개념이 뿌리깊게 자리잡고 있습니다. 때문에 포인터를 이해하는 것은 곧 C 언어 그 자체를 이해하는 것과도 통하는 것이 있습니다. 이때문에 C가 어렵게 느껴지는 것이기도 하겠지요. 제 나름대로 C를 쉽게 정의 내려본다면, "왠만한건 다 포인터로 처리한다" 라고 말하겠습니다. 정말 C에서는 포인터로 못하게는게 거의 없습니다. 물론 그만큼 강력하지만 잘못다루면 심각한 에러를 만들어 낼 수 있고, 또 C를 이해하기 어렵게 만드는 요인이기.. 2012. 9. 14.
C 포인터, 확실히 알자(2) - 배열과 포인터 Sizuha`s Bit Essay | 시즈하 http://blog.naver.com/bitessay/130004212485 시작 포인터를 얘기할 때, 꼭 배열이란 것을 다시 언급하게 됩니다. 사실 C에서 포인터(Pointer)와 배열(Array)은 꽤 닮은 점이 있습니다. 결론부터 말하면, 배열이 내부적으로 포인터로 구현되어 있기 때문입니다. 1. 배열(Array) 배열이란 동일한 타입을 가지는 일련의 변수군을 정의한 겁니다. 가령 int A[5]; 이라고 선언하면 정수(int)형 변수 5개를 만들고 그것을 A 라는 하나의 이름으로 통합해서 관리하게 됩니다. 그러면 메모리상에서 배열은 어떤 모습일까요? 일단 배열의 각 원소가 할당받는 어드레스를 살펴봅니다. ──────────────────────────.. 2012. 9. 14.
C 포인터, 확실히 알자(1) - 변수와 포인터 Sizuha`s Bit Essay | 시즈하 http://blog.naver.com/bitessay/130004157487 서론 C Language를 공부하면서 가장 이해하기 어려운 것이 무어냐고 물어본다면, 아마도 거의 대부분 "바로 포인터(Pointer)라는 녀석이다!" 라고 말할 것입니다. C에서 다른 건 다 이해가 되어도 "포인터 만큼은 죽어도 모르겠다" 라고 말하는 경우를 제 주변에서도 심심치 않게 봐왔습니다. 사실 C는 어려울 수밖에 없습니다. C를 그저 프로그래밍의 기초 과정에서 배우는 옛날 언어라고 생각하고 가볍게 볼만큼 만만한 녀석이 전혀 아닙니다. C는 어셈블리(Assembly)의 사촌입니다. 다시 말하면, C는 하드웨어 - 특히 마이크로프로세서(CPU)와 친한 녀석입니다. 때문에 하드.. 2012. 9. 14.
깜빡임이 없어지지않네요 iperfume님의 블로그 | 루시아 http://blog.naver.com/iperfume/100032793209 [MFC] CList로 비트맵 띄우는데 드래그 할 때 깜빡임이 없어지지않네요 이미지를 몇개 출력해서 리스트에 저장한다음 뿌려주는 프로그램을 짜고 있습니다. 거의 다 완성 되었는데 OnLButtonDown() OnMouseMove()에서 OnLButtonUp()으로 그림을 선택해서 드래그 하는 프로그램인데요. 드래그 될때 마니 깜박거리네요. Invalidate, InvalidateRect, OnEraseBkfnd()도 써보고 아예 배경을 다시 그리기도 해봤지만 왜 안되는건지 궁금합니다. 아래는 이미지를 그리는 부분과 마우스 커서 움직이는 부분입니다. 깜박거리는 것 말고는 잘 동작하고 있습니다.. 2012. 9. 14.
다른 윈도우에 포커스 주기 카페 > White Shadow ::.. | 그림자 http://cafe.naver.com/whiteshadow/84 HWND hWnd = ::FindWindow(NULL, "제목 없음 - 메모장"); if(hWnd) { ::ShowWindow(hWnd, SW_RESTORE); ::SetForegroundWindow(hWnd); } 간단하네~ 간혹 필요한 경우가 있어서리.. 2012. 9. 14.
MFC에서 D3D 8.0 사용하기(툴만들때 용이) balbari882님의 블로그 | 재준 http://blog.naver.com/balbari882/140013140047 안녕하세요~ 이준곤(LeeChen) 입니다. 참고로 이강좌는 외국사이트를 번역기로 번역해서 옮긴것이라 문맥이 앞뒤가 어색할수 있습니다. 이강좌는 저에게 개인적으로 "MFC에서 D3D를 붙일려구 하는데 어떻게 해야 하나요?"라는 관련질문을 많이 해오셔서 이내용을 시간이 없는 관계로 그냥 캡쳐해서 올립니다. 개인적으로 시간이 많다면 강좌도 쓰고 책도 쓰고 싶지만... 이래저래 핑계로 못하고 있네요~ ^^; 그럼.도움이 되셨으면 합니다. -------------------------------------------------------------------------------- Direc.. 2012. 9. 14.
프레임웍없이 사용가능하게 vs(비쥬얼스튜디오) 에서 빌드하는법 프로젝트 에서 마우스 오른쪽 속성 > MFC사용 > 공유DLL에서 MFC 사용 으로 바꿈 초기값은 표준 windows 라이브러리사용 2012. 9. 14.
C++ 에서 -> 의 의미 답변1. 생성된 클래스의 값을 불러드린다고 치고 혹 class Student{ public: int a=5; } 가 있지요. Student A, *B; 가 있다고 하면 B가 포인터지요? 그럼 B는 메모리안에 address만 가지고 있습니다. public 에 있는 값을 불러올때 A.a 를 그냥 부르면 되지만 B가 포인터기에 B->a 를 해야지만 값을 가지고 올수 있습니다. 혹 B.a 라고 사용하게되면 에러가 뜨지요. 혹 B = new Student ... 라고 B에게 용량을 준다면 B.a 가 사용가능, B->a 는 못쓰죠. 이제 B에 address값이 없어지고 클래스에 필요한 용량이 address값이 있던곳에서 쭈욱 하고 늘어나 클래스에 필요한 공간이 생겼다고 생각하시면 됩니다. 어설푼 답이였습니다.. ㅈ.. 2012. 9. 14.