Programming
-
끄적 끄적 정리 - 2 (CallbyValue, CallbyReference)Programming/C 2011. 1. 14. 01:37
1. Call by Value 함수 호출의 한 형태로, “값의 복사”를 통해 호출한다. ex) void abc(int a, int b); int main(void) { int val1=10,val2=20; printf(“%d %d”, val1,val2); abc(val1,val2); return 0; } void abc(int a, int b) { int temp; temp=a; a=b; b=temp; printf(“%d, %d”,a,b); } 값을 단순히 복사한 것이기 때문에 a,b의 값은 변할 수 있어도, val1,val2의 값은 변하지 않는다. 한마디로 단순히 값을 참조하는 것이다. 2. Call by Reference 값 참조 + 변경 void abc(int *a, int *b); int main..
-
끄적끄적 정리 - 1Programming/C 2011. 1. 13. 23:55
연습장에 쓰듯, 공부한 내용들을 정리해 나가기 위해 작성함. 1. 배열의 전체 길이 = 배열의 크기(총 바이트) / 배열 요소의 자료형 크기 ex) sizeof(arr)/sizeof(int) 2. 배열을 인자로 전달받는 함수의 경우, 대부분 배열의 길이도 함께 전달받도록 구현해야 한다. ex) int arr[3]; int *p=arr; printf(“%d\n”, sizeof(arr)); // 12 출력 printf(“%d\n”,sizeof(p))l; // 4출력 3. 함수의 매개변수를 선언할 때, int pArr[] 와 int *pArr은 같은 의미이다. 하지만 이것은 매개 변수 선언 시 예외적으로 허용되는 방법임. 따라서 되도록 int *pArr의 형태로 사용하는 것이 좋다.
-
-
Error code..Programming/C 2010. 5. 14. 03:31
* fatal error C1083 원인 : 빠른 컴파일을 하기 위해 미리 컴파일된 .pch 파일이 없어서 나타나는 문제. 해결방법 : [Project setting]->[C/C++]->[PreCompiled Header]->[Use precompiled header file]선택 뒤 Rebuild all * error C2664 원인 : 유니코드 캐릭터 셋 관련 오류, vs 2005이상 버전에서는 Use Unicode Character Set이라 발생하는 문제. 해결방법 : 프로젝트 속성/ 구성속성/ 프로젝트 기본값/ 문자집합 에서 유니코드->멀티바이트로 변경 !! *주의 : 프로젝트 생성시 초기 설정값이기도 하므로 생성 대 유심히 체크할 것!! 출처 : http://hisexperience.tisto..