C언어 61

C언어 l-value, r-value

C언어에는 l value, r value 개념이 있다. 대부분 컴파일러에서 오류에 대해 이야기할 때 해당 단어가 많이 나온다. l value : left value :왼쪽 값 : 사라지지 않는 변수 r value: right value :오른쪽 값 : 값을 부여하고 사라지는 임시 변수 int a = 5; l value a a라는 이름을 가지는 변수 r value 5 5라는 값을 부여하고 사라짐 int b = a++; l value b b라는 이름을 가지는 변수 r value a++ a값을 카피하여 임시변수에 저장 후, 원래 a의 값을 변경

C언어 14차시 연산자 우선순위, 결합 규칙, 형변환, 자동변환, 명시변환

목차 1. 연산자 우선순위 precedence 우선순위는 여러 연산 중에 어떤 연산을 우선으로 할지 결정하는 규칙이다. 과거에 배웠던 수학을 생각하면 된다. 2. 연산자 결합규칙 association 결합규칙이란 동일한 우선순위의 연산이 있는 경우 무엇을 먼저 하느냐에 대한 규칙이다. 대부분 왼쪽에서 오른쪽으로 결합하지만, 다항 연산자들과 대입 연산자는 오른쪽에서 왼쪽으로 결합한다. 3. 형변환 type casting 데이터타입을 변환시킨다. 1) 자동 변환 - 올림 변환 promotion 낮은 자료형에서 높은 자료형으로 자동 변환되는 것을 의미한다. 서로 다른 자료형이 혼합되어 사용되는 경우, 더 큰 자료형으로 통일된다. double a= 1.134; int b = 10; //계산될 때 자동으로 10...

C언어 13차시 대입 연산자, 관계 연산자, 비트 연산자, 비트 이동 연산자

목차 1. 대입 연산자 assignment operator - 왼쪽 변수에 값을 저장한다. (수학에서는 =는 등호이다.) - 연속해서 사용이 가능하다. x = y = z = 0; z=0 이다. y=0 이다. x= 0 이다. 오른쪽에서부터 해석해나간다. -복합 대입연산자 +=, -=. *=, /=, %= x+=y 는 x= x+y 이다. 2. 관계 연산자 relational operator - 두 개의 피연산자를 비교한다. - 값은 불린형태로 true=1, false=0 두 가지로 나온다. ==, !=, >, =, >1); //00100 return 0; } 변수 값을 두배로 하려면, 왼쪽으로 비트를 이동시키고 변수 값을 1/2배로 하려면, 오른쪽으로 비트를 이동시킨다.

C언어 12차시 수식과 연산자, 산술연산자, 증감연산자

목차 1. 수식 expression 피연산자들과 연산자의 조합 연산자 operator: 연산을 나타내는 기호(*) 피연산자 operand: 연산의 대상이 되는 것( 5, 8) 2. 연산자 C는 다양한 종류의 연산자를 제공한다. 제공하는 연산자가 많다는 것은 그만큼 데이터를 가공할 수 있는 범위가 넓다는 뜻이다. 이런 연산자들을 자유자재로 쓴다면, 복잡한 연산을 간단하게 처리할 수 있다. 마치, 가구를 만드는 장인이 다양한 도구와 방법을 활용해 여러 가구를 뚝딱뚝딱 만드는 것과 같다. 2-1. 산술연산자 +, -, *, /, % 덧셈 뺄셈, 곱셈, 나눗셈, 나머지와 관련된 연산자이다. ※ 주의점 사람에게 9/5를 계산하라고 하면 금방 1.8이라고 대답한다. 그런데 컴퓨터는 1이라고 대답한다. 왜냐하면, 피..