반응형

컴퓨터/C_Programing 19

포인터배열 / 배열포인터 차이

​출처: http://cds0915.blog.me/100210152374 ​ 포인터 배열은 변수들의 주소를 담는 배열을 의미하고, 배열 포인터는 배열을 가리키는 포인터를 의미합니다. 예제소스) 난 정말 C Programming을 공부한 적이 없다구요! 참조 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 #include int main() { int i, j; /* 포인터 배열의 선언 */ int a = 1, b = 2, c = 3; int *ptrArr[3] = {&a, &b, &c}; /* 배열 포인터의 선언 */ int arr[2][3] = { 1, 2, 3, 4, 5, 6 }; int(*arrPtr)[..

visual studio(VS) 6.0 에서 스택 크기/사이즈 변경

VS6.0 에서는 기본적으로 스택 사이즈가 1MB로 설정 되어 있다. 이 부분을 임의로 늘려주기 위해서는 Project Settings(Alt+F7) -> Link 탭 -> category - output -> Stack allocations - Reserve 부분을 0xa00000 로 변경해준다. 0xa00000는 16진수로 10메가 즉, 10진수로 10485760을 의미한다. 이숫자는 변동이 가능하다. 너무 과하게 스택 사이즈를 늘려주는 것은 안좋을듯하다. 스택을 1MB로 준것은 이유가 있을듯.

비트연산자(&, |, ~, <<, >>)

​ 출처 : http://cky5122.blog.me/80186222780​ ​ ​1. C언어 : 비트 연산자 01 [1] C언어 비트 연산자 : 최적화 시키는 데 유용한 녀석들? ⓐ : 예제 01 오늘은 예제가 조금 많을 겁니다. 후후. 비트 연산자로 할 수 있는 것들이 좀 되니.. 이 참에 제대로 알아봅시다. 자. 실행 결과는 어떻게 될까요? 일단 저는 8bit 바이트, 4바이트 워드, 정수형은 2의 보수로 표현이 되고, ASCII 문자 코드를 갖는다고 가정하고 설명을 할 겁니다. 자. 50과 15를 2진수로 바꿔봅시다. 여기까지는 쉽게 이해 되실 거예요. 5번째 줄의 a&b를 봅시다. &은 비트 AND 연산입니다. 비트 단위로 AND 연산을 하라는 것이죠. & 연산자를 쓰면요. 두 비트의 값이 모두..

아스키코드표 (ASCII) / 확장 아스키 (extecded ASCII) / HTML 코드

아스키코드표 (ASCII) / 확장 아스키 (extecded ASCII) / HTML 코드 아스키 확장아스키 원래 아스키코드는 통신을 목적으로한 7비트 코드로서 상위 1비트를 패러티비트로 사용하는 총 8비트의 코드입니다. 평소 사용하지 않는 상위 1비트를 추가로 사용하는게 확장 아스키코드 입니다. 아스키코드는 0~127까지 총 128개의 코드가 있으며.. 확장 아스키코드는 0~255까지 총 256개의 코드가 있습니다.

VC 6.0 에서 souce safe 연결 삭제 하기

[펌] VC++ 프로젝트에서 Visual Souce Safe 삭제 방법 http://nicejay.egloos.com/368888 http://gpgstudy.com/gpgiki/Programming%20%ED%8C%81%20%EB%AA%A8%EC%9D%8C VC++ 프로젝트에서 Visual Source Safe 삭제 방법 시작하기에 앞서 파일들이 읽기전용이면 이를 풀어줍니다. VC++ 6.0 프로젝트에서 Visual Source Safe 삭제 방법 1) 프로젝트 폴더에 있는(하위폴더 포함) *.scc 파일을 모두 삭제 합니다. 보통 프로젝트 메인 폴더에 mssccprj.scc 파일이 있고, 각 폴더마다 vssver.scc 파일이 있습니다. 하위 폴더까지 이 파일이 있으니 검색을 통해서 모두 삭제하세요...

멀티바이트, 유니코드 차이

출처 : http://blog.naver.com/wondo21c/30043174174 앞으로 문자열을 코딩할 때, char 대신에 TCHAR을 사용해야겠다. 확장성과 이식성을 위해서 앞으로 그렇게 습관을 들여야겠다. Visual Studio 2005 프로젝트 속성 ->구성속성을 보면 문자 집합으로 2가지를 사용할 수 있다. 1. 멀티바이트 문자 집합 2. 유니코드 문자 집합 아스키코드는 모든 문자 하나가 1byte를 차지한다. 하지만, 아스키 문자 코드 만으로는 한글이나 일어 등의 다른 문자를 표시할 수 없다. 그래서 아스키 문자 코드에다가 다른 문자(2byte)들을 포함한 문자 집합이 멀티바이트 문자 집합이다. 정확히는 모르겠지만, 한 문자가 2byte를 넘는 문자도 존재할 것이다. 그래서 용어 자체가..

visual stdio 200x 단축키 모음

코드 어시스트 : Ctrl + Space 파라미터 정보 어시스트 : Ctrl + Shift + Space 함수원형가기 : F12 함수선언가기 : Ctrl + F12 전체 소스코드 정리 : Ctrl + K + D 선택한 소스코드정리 : Ctrl + K + F 선언되지 않은 함수 자동으로 생성해주기 : Ctrl + K + M 주석처리 : Ctrl + K + C 주석해제 : Ctrl + K + U 한줄자르기 : Ctrl + L 짝따라가기 : Ctrl + ] 북마크 설정 : Ctrl + F2 북마크 해제 : Ctrl + Shift + F2 북마크 찾아가기 : F2 단어 찾기 : Ctrl + F 파일에서 문자찾기 : Ctrl + Shift + F 현재 커서 다음위치에서 찾기 : F3 현재 커서 이전위치에서 찾기 ..

디버그 모드 & 릴리즈 모드

프로젝트를 컴파일하여 실행 파일을 만드는 방법에는 디버그/릴리즈 두 가지가 있다. 디버그 빌드와 릴리즈 빌드에서 서로 실행 결과가 다른 경우, 특기 디버그 빌드에서는 괜찮은데 릴리즈 빌드에서만 오류가 발생하여 프로그램이 죽는 경우가 있는데 이런 경우는 대부분 메모리가 깨진 경우에 발생한다. 두 모드에서 동적으로 메모리를 할당하면 힙 영역에 요청한 크기만큼 메모리를 할당 받게 되는데 그 초기값이 다르다. 릴리즈 빌드의 경우 할당된 메모리 영역을 초기화하지 않는 경우 바로 할당되기 직전의 쓰레기 값이 그대로 사용되는 반면 디버그 빌드의 경우 디버거로 디버깅하는데 블록을 구분하기 위해 0xCC, 0xDD와 같은 값으로 초기화된다. 디버그 모드 실행 파일에 디버깅 정보를 삽입하여 언제든지 디버깅을 할 수 있도록..

반응형