씨 프로그래밍(67)
-
Typedef- 자료형 재정의
typedef를 이용한 자료형의 재정의 기본 자료형들에 새로운 이름을 붙이는 용도 자료형을 간결하게 표현 가능 프로그램의 가독성을 높임 너무 남용하면 자료형 분석 시 혼란 초래 typedef 형식 typedef [기본자료형] [사용자정의자료형];typedef int mytype;
-
Ex16-문자형은 캐릭터형을 선호
문자형은 캐릭터형을 선호하며 ASCII 코드를 참조해서 문자를 인식하게 됩니다. char형 변수를 출력 서식에 따라 출력해 보기 소스코드 #include int main(void) { char val1; val1='A'; //문자가 변수에 저장될 때 먼저 ASCII코드 값을 참조해서 저장 //char형 변수를 출력 서식에 따라 출력 //%d :정수형, 10진수 숫자 출력 //%c :문자형, 문자 출력 printf("%d, %c \n", val1, val1); // 65 A 출력 val1='B'; printf("%d, %c \n", val1, val1); // 66 B 출력 val1='C'; printf("%d, %c \n", val1, val1); // 67 C 출력 return 0; } 출력결과
-
Ex15-float형 오차 발생
float형 오차 발생 실수형은 기본적으로 double형을 선호 C언어 컴파일러는 기본적으로 실수를 소수점 6자리 출력해 줍니다. 소스코드 #include int main(void) { float num1=0.123456789012345; double num2=0.123456789012345; printf("float형 : %f \n", num1); //0.123457 출력 //0.123456 789012345 printf("double형 : %lf \n", num2); //0.123457 출력 //6째자리까지 반올림해서 표현 //%.15f: float형을 15자리까지 표현 printf("float형 : %.15f \n", num1); //0.123456791043282 출력 //0.123456 7890..
-
Ex14-양수/음수에서 비트단위 이동 연산 수행
양수/음수에서 비트단위 이동 연산 수행 소스코드 #include int main(void) { int num1=10; //00001010 int num2=-10; //11110101 (1의보수) //11110110 (1 더함) //-10 int result1; int result2; result1 = num1 >> 1; //00000101 //양수인경우 0으로 채움 result2 = num2 >> 1; //11111011 //-5 //음수인경우 1로 채움 //오른쪽으로 1비트씩 이동할 때 마다 2씩 나누어집니다. //11111011 //-5 //00000100 (1의보수) //00000101 (1 더함) //5 printf("비트단위 >> 연산 결과: %d \n",result1); //5 printf("..
-
Ex13-비트단위 << 연산, 비트단위 >> 연산
비트단위 > 연산 소스코드 int main(void) { int num1=10; // 00001010 int result1; result1 = num1
-
Ex12-비트연산자
비트연산자 비트 단위 AND 연산, 비트 단위 OR 연산, 비트 단위 XOR 연산, 비트 단위 NOT 연산 &연산자 vs 주소연산자 피연산자사이의 & &연산자 변수앞의 & 주소연산자 소스코드 #include int main(void) { int a=12; // 128 64 32 16 8 4 2 1 // 0 0 0 0 1 1 0 0 int b=20; // 128 64 32 16 8 4 2 1 // 0 0 0 1 0 1 0 0 int result1, result2, result3, result4; result1 = a & b; // 128 64 32 16 8 4 2 1 // 0 0 0 0 1 1 0 0 // 0 0 0 1 0 1 0 0 //---------------------- // 0 0 0 0 0 1 ..