C++프로그래밍
20130329_함수포인터(1)
1. 먼저 한글은 한글자당 2byte를 할당 받음. 2. char *T = "안녕하세요\n"; , 포인트변수 T 를 할당하였고, T가 가지고있는 주소를 따라가서 그 안에 "안녕하세요\n" 를 넣어둠! 3. printf(T); , T의 주소를 찍어주었고, printf 는 심볼테이블에 적히는 자료형이 int( *)(const char *,...) 이므로 문자형 상수인 const char * 에 의해 T의 주소를 따라간다. 4. 그러므로 printf(T); 는 '12녕하세요' 가 출력 되었다.5. 밑에 printf(0x0040B000); 로 컴파일을 하면 경고메세지가 뜬다. "안녕하세요\n" 가 문자형상수이므로 같은 자료형으로 맞춰 주어야 하기 때문이다. 그래서 앞에 캐스팅을 해줘서 자료형을 맞추면 경고메세지..
[스크랩]인수/인자리스트
■ 함수 인자 / 인수 리스트- 빨간 부분을 인자/인수 리스트라고 함.- 파란 글씨 각각을 인수 또는 인자라 함.ex ) float average( int n1, int n2 ) ※ char A; int n1; n1 = A; //둘다 정수형이라 에러 안뜸(묵시적 형변환) ※ 메인함수에 return 이 빠져있으면 컴파일러가 넣어줌 하지만 우린 return 0 를 직접 넣어주는것을 표준으로 함. ※ 반환형이 void 형이면 return; 를 적어줌, 안적어도 컴파일러가 적어줌(하지만 적는 습관을 가져야함)※ 리턴값은 임시값으로 CPU(레지스터)에 들어가 있음. 함수의 호출과 실행 / 함수의 정의- 함수이름은 변수이름과 같은 조건으로 만들수 있음(대소문자 구분, 첫글자는 _ 또는 알파벳으로만 숫자, 알파벳, ..
2013.03.28_함수의인수전달기법
1. 함수의인수 전달 기법으로는 큰 분류로 값전달( + 포인터(주소값) 포함되있음)과 참조전달이 있다. C에서는 값전달과 주소값 전달이 있다. ※ 값전달을 하면 함수에서 값을 정의하고 반환값으로 하나의 값을 받을수 있지만, 주소값 전달은 포인터를 이용하면 반환값으로 여러개의 값을 받을수가 있음을 보여준다.
20130327_헤더파일응용편!
Main 함수 smart.c test.c Smart.h test.h 1. 먼저 파일들은 main.c , smart.c , test.c , smart.h , test.h Main.c 에서 #define _SMART_H_ 와 함께 원형을 불러온다. 그리고 메인함수안에 명령어로 AA( 3.4f ) 의 값을 알아오고, Test(); 의 값을 알아오고 싶다. ▼ 2. 먼저 AA( fNum(실수 3.4f) ) 이 정의 되어있는 곳으로 간다. #include "smart.h" 를 통해서 프로토타입을 선언해준 후에 함수의 void AA( float iNum)의 중괄호 사이에 printf() 문으로 그대로 실수 출력이 나오게 했다. 링크에 의해서 실행을 할때 불러와서 도스창에 출력을 해준다. ▼ 3. 다음으로 Test...
2013.03.26_링크란무엇이며,도스창에서 링크는 어떻게하는가!?
1. 각 함수파일을 obj까지(Compile만!!) 하는 방법은 cl /c 떙떙.c ( ex: cl /c main.c , cl /c smart.c ) 하면 된다. 2. 컴파일만 해놓은(.obj) 따로 뜯어져있는 함수를 모아서 연결해주는 것을 '링크' 라고 한다. 이 방법은 도스창에 cl main.obj smart.obj 하면된다. ※ 활용 : 만드는 부분을 분할해서 일을 할수있다. 그리고 회사가 달라 소스는 주지않고, 컴파일한 .obj 파일만 줄수도 있으며, 수정이 필요한 경우 수정한 부분만 포함된 소스파일을 컴파일 할 수 있기 때문에 컴파일시 시간이 줄어든다.