본문으로 바로가기

[D+8] C언어 기초 (2)

category 해킹&보안/C언어 2017. 2. 16. 23:08
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

2. C언어 기초


1) 연산자


▣ 증감 연산자

- ++ : 연산 대상을 1만큼 증가시킴.

- -- : 연산 대상을 1만큼 감소시킴.

- 후위 연산자 : 변수 뒤에 ++ 이나 -- 가 옴.

☞ 변수 값 먼저 불러와서 사용 후 제일 나중에 값을 +- 1 시킴.

- 전위 연산자 : 변수 앞에 ++ 이나 -- 가 옴.

☞ 변수 사용전 먼저 값을 +- 1 시키고 변수에 저장 후 사용.


#include <stdio.h>

int main()
{
	int a = 10;
	int b = 20;

	printf("a++ = %d\n", a++);
	printf("++b = %d\n\n", ++b);
	
	printf("a = %d\n", a);
	printf("b = %d\n", b);

	return 0;
}

- 실행 결과


▣ 캐스팅 연산자

- 자료형을 일시적으로 바꿔줌.

- cpu에서 처리하는 연산이 아닌 언어상에서만 존재하는 연산자 (컴파일러가 처리)

- usage : (자료형)

ex) (int)


#include <stdio.h>

int main()
{
	int		a = 10;
	float	b = 3.14;
	double	c = 99.9;

	printf("a + b = %d\n", a + b);
	printf("b + c = %c\n", b + c);

	printf("a + b = %d\n", a + (int)b);
	printf("b + c = %c\n", (char)(b + c));

	return 0;
}

- 실행 결과

☞ 두 번째 줄의 b + c 의 결과가 ? 인 것은 해당하는 아스키 값이 없기 때문임.


▣ sizeof 

- 변수나 자료형의 크기를 바이트 단위로 알려줌.

- 이 또한 캐스팅 연산자 처럼 실제 연산은 아님.

- 컴파일러가 제공해주는 기능.

- usage : sizeof(자료형) or sizeof(변수명)

#include <stdio.h>

int main()
{
	int a = 0;

	printf("int  : %d\n", sizeof(int));
	printf("char : %d\n", sizeof(char));
	printf("a    : %d\n", sizeof(a));

	return 0;
}

- 실행 결과



2) 제어문 - 조건문


▣ if 

- 상황에 따라서 다른 행동을 취함.

- 조건문이 참이면 실행문을 실행.

- 조건문은 수식, 변수, 상수 등으로 이루어짐. (조건문에 상수는 가능은하나 실제로 쓰이는 경우는 없음)

ex)

if(조건문)

{

실행문;

}

#include <stdio.h>

int main()
{
	int a = 0;

	if (a < 5)
	{
		printf("a < 5\n");
	}

	if (a)
	{
		printf("a \n");
	}
	return 0;
}

- 실행 결과

▣ if ~ else

- 조건문이 참이면 if안의 실행문을 실행하고 거짓이면 else안의 실행문을 실행함.

- 둘 중 하나는 반드시 실행. 오직 하나만 실행.

ex)

if(조건문)

{

실행문1;    //조건문이 참이면 실행됨.

}

else

{

실행문2;    // 조건문이 거짓이면 실행됨.

}

#include <stdio.h>

int main()
{
	int a = 0;

	if (a < 5)
	{
		printf("a < 5\n");
	}
	else
	{
		printf("a > 5\n");
	}
	return 0;
}

- 실행 결과


▣ 중첩 if

- if의 실행문 속에 또 다른 if를 사용 할 수 있음.

#include <stdio.h>

int main()
{
	int a = 0;

	if (a < 5)
	{
		if (a <= 0)
			printf("a <= 0 \n");
		else
			printf("0 < a <5\n");
	}
	else
	{
		printf("a > 5\n");
	}
	return 0;
}

- 실행 결과


▣ else ~ if

- if ~ else ~ if ~ else... 이런식으로 연결해서 사용이 가능.

- 성적 계산할 때 이런 방식을 사용.

ex) 90점 이상이면 A, 아니면 80점 이상이면 B, ....

#include <stdio.h>

int main()
{
	int a = 2;

	if (a < 0)
	{
		printf("a < 0\n");
	}
	else if(a < 5)
	{
		printf("a < 5\n");
	}
	else
	{
		printf("a > 5\n");
	}

	return 0;
}

- 실행 결과






i2sec 대구지점 23기 수료생.

'해킹&보안 > C언어' 카테고리의 다른 글

[D+10] C언어 기초 (4)  (0) 2017.02.20
[D+9] C언어 기초 (3)  (0) 2017.02.17
[D+7] C언어 기초 (1)  (0) 2017.02.15
[D+5] C언어 소개 (4)  (0) 2017.02.13
[D+4] C언어 소개 (3)  (0) 2017.02.09