1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)-

Similar documents
Microsoft PowerPoint - chap03-변수와데이터형.pptx

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - Chapter_04.pptx

PowerPoint Presentation

OCW_C언어 기초

Microsoft PowerPoint - 2장 변수와 자료형 pptx

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - chap04-연산자.pptx

OCW_C언어 기초

Microsoft PowerPoint - [2009] 02.pptx

ABC 3장

untitled

C 언어의구성요소인상수, 변수, 입 출력함수에 대하여학습

Microsoft PowerPoint - chap03.ppt

Microsoft PowerPoint - 03_(C_Programming)_(Korean)_Pointers

untitled

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

쉽게 풀어쓴 C 프로그래밍

슬라이드 1

PowerPoint Presentation

The C++ Programming Language 4 장타입과선언 4.11 연습문제 Hello,world! 프로그램을실행시킨다. 프로그램이컴파일되지않으면 B3.1 을참고하자. #include<iostream> //#include 문, 헤더파일, 전처리지시

Microsoft PowerPoint - chap-04.pptx

ABC 2장

KNK_C02_form_IO_kor

금오공대 컴퓨터공학전공 강의자료

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - Perpect C 02.ppt [호환 모드]

Microsoft PowerPoint - chap-04.pptx

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

OCW_C언어 기초

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

ABC 3장

Microsoft PowerPoint - chap06-2pointer.ppt

C++ Programming

슬라이드 1

11장 포인터

untitled

쉽게 풀어쓴 C 프로그래밍

int main(void) int a; int b; a=3; b=a+5; printf("a : %d \n", a); printf("b : %d \n", b); a b 3 a a+5 b &a(12ff60) &b(12ff54) 3 a 8 b printf(" a : %x \

1.4.3 증감연산자 후치증가 a++: 프로그램의한명령줄이끝나고 1을증가시킨값을다시 a에저장. 후치감소 a--: 프로그램의한명령줄이끝나고 1을감소시킨값을다시 a에저장. 전치증가 ++a: 1을증가시킨값을미리 a에저장하고프로그램을수행. 전치감소 --a: 1을감소시킨값을미리

Microsoft PowerPoint - CP_02_Convert_To_C_02_Step.pptx

K&R2 Reference Manual 번역본

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

: 1 int arr[9]; int n, i; printf(" : "); scanf("%d", &n); : : for(i=1; i<10; i++) arr[i-1] = n * i; for(i=0; i<9; i++) if(i%2 == 1) print

Microsoft PowerPoint - c2.ppt

PowerPoint 프레젠테이션

Microsoft PowerPoint - Chapter_05.pptx

<4D F736F F F696E74202D20C1A634C0E520BAAFBCF6BFCDC0DAB7E1C7FC>

Microsoft PowerPoint - chap11-포인터의활용.pptx

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

Microsoft PowerPoint - chap11.ppt [호환 모드]

PowerPoint Presentation

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - chap10-함수의활용.pptx

11장 포인터

본 강의에 들어가기 전

BMP 파일 처리

PowerPoint 프레젠테이션

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

슬라이드 1

Microsoft PowerPoint - 제11장 포인터(강의)

Microsoft PowerPoint - 제11장 포인터

금오공대 컴퓨터공학전공 강의자료

03 상수, 변수, 자료형

PowerPoint Presentation

Microsoft PowerPoint - additional01.ppt [호환 모드]

강의 개요

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

<4D F736F F F696E74202D20C1A633C0E52043C7C1B7CEB1D7B7A5B1B8BCBABFE4BCD2>

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

02장.배열과 클래스

프로그램을 학교 등지에서 조금이라도 배운 사람들을 위한 프로그래밍 노트 입니다. 저 역시 그 사람들 중 하나 입니다. 중고등학교 시절 학교 도서관, 새로 생긴 시립 도서관 등을 다니며 책을 보 고 정리하며 어느정도 독학으르 공부하긴 했지만, 자주 안하다 보면 금방 잊어

Microsoft PowerPoint - chap-03.pptx

PowerPoint Template

슬라이드 1

Microsoft PowerPoint - chap06-1Array.ppt

중간고사

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2

Microsoft PowerPoint - 2주차-1차시 (강의자료) ch01 - C Programming 기초 (part 2)

Microsoft PowerPoint - Lesson2.pptx

쉽게 풀어쓴 C 프로그래밍

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout << " 양수입력 : "; cin >> *p; if (*p <= 0) cout << " 양수를입력해야합니다 " << endl; return; 동적할

C 프로그램의 기본

YRRZBRRLMCEQ.hwp

Microsoft PowerPoint - chap05-제어문.pptx

C 프로그래밊 개요

(Microsoft PowerPoint - 11\300\345.ppt [\310\243\310\257 \270\360\265\345])

윤성우의 열혈 TCP/IP 소켓 프로그래밍

Microsoft PowerPoint - chap12-고급기능.pptx

<4D F736F F F696E74202D20C1A632C0E520C7C1B7CEB1D7B7A5B0B3B9DFB0FAC1A4>

PowerPoint 프레젠테이션

슬라이드 1

Microsoft PowerPoint - chap4_2013 [호환 모드]

본 강의에 들어가기 전

Transcription:

1.2 자료형 (data type) 프로그램에서다루는값의형태로변수나함수를정의할때주로사용하며, 컴퓨터는선언된 자료형만큼의메모리를확보하여프로그래머에게제공한다. 1.2.1 정수 (integer) 1) int(4 bytes) 연산범위 : (-2 31 ) ~ (2 31 /2)-1 연산범위이유 : 00000000 00000000 00000000 00000000의 32 bits 중 좌측첫 bit는부호를나타내며 1일때 (-), 0일때 (+) 를표시한다. 2) long int(4 bytes)( 단순히 long이라함 ). 연산범위 : int와동일. 3) short int(2 bytes)( 단순히 short라함 ) : (-2 15 ) ~ (2 15-1) 4) unsigned int( 부호없는 int) : 0 ~ (2 32-1) 5) unsigned long( 부호없는 long) : unsigned int와동일 6) unsigned short( 부호없는 short) : 0 ~ (2 16-1) 1.2.2 문자 (character) 문자는 1 byte 가할당되어그속에수를기록할수있다. 1) char(1byte) : (-2 7 ) ~ (2 7-1) 2) unsigned char( 부호없는 char) : 0 ~ (2 8-1) 1.2.3 실수 (float point) 1) float(4 bytes) 저장방법 : 예 ) 3.14159 = 0.314159( 가수 ) x 10 1 ( 지수 ) 0 00000000 00000000000000000000000 부호bit 지수 =8bits 가수 =23bits 2) double(8 bytes) 0 00000000000 00000000...00000000000 부호bit 지수 =11bits 가수 =52bits 이러한정의들은 2 bytes (16 bits) 컴퓨터가유행하던시절사용하던용어들이다. 오늘날은 4 bytes (32bits) 를기본으로하기때문에 short, long, float들은주로 int, double, char로단순화하여사용된다. sizeof() 함수속에자료형을넣어배정된메모리의크기를확인할수있다. 예제 ) sizeof() 함수로배정된메모리의크기조사

printf("char=%d\n", sizeof(char)); printf("unsigned char=%d\n", sizeof(unsigned char)); printf("int=%d\n", sizeof(int)); printf("unsigned int=%d\n", sizeof(unsigned int)); printf("float=%d\n", sizeof(float)); printf("double=%d\n\n", sizeof(double)); printf("short=%d\n", sizeof(short)); printf("unsigned short=%d\n", sizeof(unsigned short)); printf("long=%d\n", sizeof(long)); printf("unsigned long=%d\n", sizeof(unsigned long)); cout<<"char="<<sizeof(char)<<'\n'; cout<<"unsigned char="<<sizeof(unsigned char)<<'\n'; cout<<"int="<<sizeof(int)<<'\n'; cout<<"unsigned int="<<sizeof(unsigned int)<<'\n'; cout<<"float="<<sizeof(float)<<'\n'; cout<<"double="<<sizeof(double)<<"\n\n"; cout<<"short= "<<sizeof(short)<<'\n'; cout<<"unsigned short="<<sizeof(unsigned short)<<'\n'; cout<<"long="<<sizeof(long)<<'\n'; cout<<"unsigned long="<<sizeof(unsigned long)<<'\n'; 1.3 출력함수내문자 1.3.1 제어문자의역할 제어문자는프로그램의출력형식을결정하는역할을한다. 다음프로그램으로각각의제어문 자역할을알아본다. 예제 ) 제어문자의역할 printf("\\n 줄바꿈 \n"); printf("\\t 다음문장이한텝뒤에나타남 \n"); printf("\\b backspace\b\n");

printf("\\r carriage return-행의첫위치로이동 \n"); printf("\\f 용지바꿈 \n"); printf("\\ back slash\n"); printf("\" 따옴표표시 \n"); printf("\\0 NULL 문자-뒤부터동작안함 \n"); printf("\\a alarm(beep)\a\n"); cout<<"\\n 줄바꿈 \n"; cout<<"\\t 다음문장이한텝뒤에나타남 \n"; cout<<"\\b backspace\b\n"; cout<<"\\r carriage return-행의첫위치로이동 \n"; cout<<"\\f 용지바꿈 \n"; cout<<"\\ back slash\n"; cout<<"\" 따옴표표시 \n"; cout<<"\\0 NULL 문자-뒤부터동작안함 \n"; cout<<"\\a alarm(beep)\a\n"; 1.3.2 출력변환기호 1) 출력 format 다음프로그램은출력 format 의형태이다. 예제 ) 출력 format int a=2345; long b=34569; double c=31.42; char d='a'; char *e="hello"; printf("hello World\n"); // 문자열 (string) 출력 : Hello World printf("%d\n",a); // integer형출력 :2345 printf("%ld\n", b); // long형출력 :34569 printf("%f\n", c); // float형출력 :31.420000 printf("%lf\n", c); // double형출력 : 상동 printf("%e\n", c); // exponential형출력 : 3.142000e+001 printf("%c\n", d); // character 출력 : A printf("%x\n", d); // hexadecimal로출력 : 41 printf("%s\n", e); // 문자열출력 :hello

printf("%p\n\n", &a); // hex 로메모리주소출력 int f=0xb; // 수앞의 0x 는 hexa decimal 을표시한다. printf("f = %d\n", f); // decimal 로출력 : 11 printf("f = %o\n", f); // hex B 를 octo 13 으로출력 : 13 int a=2345; long b=34569; double c=31.42; char d='a'; char *e="hello"; cout<<"hello World\n"; // 문자열출력 : Hello World cout<<a<<'\n'; // integer형출력 :2345 cout<<b<<'\n'; // long형출력 :34569 cout<<c<<'\n'; // double 및 float형출력 :31.42 cout<<d<<'\n'; // character 출력 :A cout<<hex<<(int)d<<'\n'; // hexadecimal로출력 :41 cout<<e<<'\n'; // 문자열출력 cout<<&a<<"\n\n"; // hex로메모리주소출력 int f=0xb; // 수앞의 0x는 hexa decimal을표시한다. cout<<dec<<f<<'\n'; // decimal로출력 : 11 cout<<oct<<f<<'\n'; // hex B를 octo 13으로출력 : 13 cout.setf(ios::scientific); // 다음줄의수를 exponential로표기 cout<<12.3<<'\n'; 설명 : C의 printf() 는정수 (%d), 실수 (%lf), 문자 (%c) 및문자열 (%s) 의출력에대해각각의 format을갖고있다. 그러나 C++ 의 cout과 (<<) 연산자는정수나실수문자및문자열에대해다르게취급하는방식을스스로알고있기때문에이러한 format이없다. cout에문자열이전송되면이를텍스트로출력하고수가전송되면이를수로출력한다. 이것은앞으로배울 C++ 의주요특성중하나인연산자오버로딩 (operator overloading) 의한예이다. 2) 출력자리수 format 다음프로그램은출력자리수 format 이다. 예제 ) 출력자리수 format int a=2345; double b=31.42; char *c="good"; printf("%7d\n",a); // 우로부터좌측으로빈칸을포함하여 7자리 : 2345 printf("%3d\n",a); // 자리수보다모자라면무시 :2345 printf("%07d\n",a); // 2345 앞에 0을넣어 7글자를채움 :0002345

printf("%-7d\n",a); // 좌측으로부터우측으로 7자리출력 :2345 printf("%9.4f\n", b); // 소수점이하 4자리, 수를포함 9칸 : 31.4200 printf("%7s\n", c); // 문자포함 7칸출력 : good #include <iomanip.h> // setw() 를위한 header int a=2345; double b=31.42; char *c="good"; cout<<setw(7)<<a<<'\n'; // 빈칸을포함하여우로부터 7자출력 : 2345 cout<<setw(3)<<a<<'\n'; // 자리수보다모자라면무시 :2345 cout<<setprecision(4)<<b<<'\n'; // 소수점이하 4자리 cout<<setiosflags(ios::fixed)<<b<<'\n'; cout<<setiosflags(ios::showpoint)<<b<<'\n'; cout<<setw(7)<<c<<'\n'; 보다자세한내용은입출력 stream에서취급될것이다.