20150203-제어문, 수의 표현 그리고 포인터.hwp
제어문과 수의 표현 그리고 포인터
#1. ASCII Code 제어문
학습목표 - ASCII Code에서 사용되는 제어문 개념에 대해 이해한다.
C프로그램이 어떻게 실행파일을 만들어 내는가에 대해 지난 시간에 학습하였다.
C프로그램은 *.exe의 실행파일이 만들어지고, 리눅스에서는 확장자가 없이 표시된다.
오늘은 제어문에 대해서 배워본다.
* 다음 주 월요일 책 배포 예정
printf("%d,c,u,x,o,f)
c = 아스키코드를 표현한다.
명령어 끝에 엔터(\n)를 넣어줘야 한다. 리눅스 환경에서는 자동으로 엔터를 넣어주지 않기 때문에 리눅스 작성환경을 대비하여 엔터를 넣어주는 습관을 들인다.
줄 바꿈과 엔터는 다르다. 줄 바꿈은 다음 줄로 내려오는 것이고, 엔터는 줄을 바꾸고 커서도 제일 앞으로 옮겨주는 역할을 한다.
ASCII code(총 128개)
0 - 31 (32개) : 제어문자
역슬레쉬는 cl에서 해석하지 않는다. \n의 경우 단순히 n으로 해석하지 않고 엔터로 해석한다.
도스에서만 10번이 엔터 역할을 한다.(줄 내림, 커서 제일 앞으로 이동)
10번은 CR + LF
파일명을 bin으로 변경한 후 Visual Studio에서 실행해보면 Magic Number가 나타나고 이것은 파일의 형식을 나타내준다. ex) MZ는 윈도우 파일, BM 비트맵
#2. 숫자의 정렬과 표시(실습)
실습) 1. 3 * 3 = 9를 %d 3개와 printf 1개를 써서 출력하여라.
2. 구구단을 3단을 전부 적고 1의 자리는 결과 값을 나머지 값들과 같은 자리 수에 표 현 되게 정렬하여라.
3. 실수 3.2의 소수점 2자리까지만 표시되게 출력하여라.
%와 d사이에 숫자를 넣으면 그만큼 공간이 확보된다.
기본은 %와 문자 사이에 숫자를 넣으면 오른쪽으로 밀리게 된다.(왼쪽에 빈공간이 생긴다)
사이에 ‘-’를 붙이면 왼쪽정렬(오른쪽에 빈공간이 생긴다)
표현하는 자리수보다 적은 숫자를 사이에 넣어도 내용은 다 표시된다.
숫자 다음에 점을 찍고 숫자를 넣으면 소수점 이하에 출력하고자하는 자리수를 나타낸다.
변수를 대괄호로([]) 넣고 표현하면 감춰진 내용도 볼 수 있다.
#3. 포인터의 주소 표시
실습) 1. int iNum=100을 설정하고 printf로 iNum의 값과 주소(16진수로)를 표시 한다.
주소 출력 시 %08X 출력 한다 -> %p로 대체된다.
%d, c, f, u, x 는 기본 암기가 필요하다.
** 해킹 방지를 위해 심볼 테이블의 address는 계속 바뀌지만 CPU에서는 해당 주소를 보고 위치를 알아낼 수 있다.
** 원하는 사이트의 IP 주소를 알아내기 위해서는 DOS창에서
ping_‘도메인 주소’를 입력하면 된다.
#4. Visual Studio에서 고정 포인터
기계어를 이해할수록 짜여진 프로그램에 대해 조작이 가능하다.
Java는 사용자가 주소를 건들지 못하게 보호되어 있다.
C언어 쪽이 컴퓨터에 대한 이해도가 높아야하며 컴퓨터의 최적화에 알맞다.
* JVM(Java Virtual Machine)
숫자를 주소 값을 넣는 것을 배운다.
조작하는 DOS창을 Console이라고 부르기도 한다. Win32 = window 32bit
MFC C++ 윈도우 작성하는 경우
Makefile Project는 윈도우 창 작성
엠티 프로젝트를 선택하여 창을 연다.
'Busan IT > 제어언어' 카테고리의 다른 글
포인터의 개념과 컴퓨터의 데이터 저장 방식 (0) | 2015.02.05 |
---|---|
포인터 변수의 기초 (0) | 2015.02.04 |
컴파일의 단계와 처리 (0) | 2015.02.02 |
수의 출력, 연산 그리고 address (0) | 2015.01.30 |
CPU와 메모리의 의사소통 (0) | 2015.01.29 |