본문 바로가기
반응형

PROGRAMMING/C41

연산의 우선순위 이제까지 우리는 몇가지 연산에 대해서 알아보았습니다. 대입연산, 산술연산, 비트연산 등등을 알아보았죠. 그런데 혹시 기억하시나요? 우리가 초등학교 다닐 때 배웠던 사칙연산이나 방정식에도 계산의 순서가 있었죠? 그렇듯이 C언어에서 프로그램이 구동할 때도 연산의 순서가 정해져 있습니다. 이것을 연산의 우선순위라고 합니다. 오늘은 이 연산의 우선순위에 대해서 이야기 해 보겠습니다. 두괄식으로 바로 표부터 하나 보고 시작하겠습니다. 연산 순위 연산자 연산방향 1 ( ) 함수호출 왼쪽 우선 [ ] 배열 첨자 (expr)++ 후위 증가 연산자 (expr)-- 후위 감소 연산자 . 구조체/공용체 멤버 접근 → 포인터로 구조체/공용체 멤버 접근 2 ! 논리 NOT 오른쪽 우선 ~ 비트 NOT sizeof 자료형 크기 .. 2022. 9. 7.
비트연산자 자 오늘 배워볼것은 비트연산자 입니다. 간단하게 비트연산자에는 어떤것이 있는지 바로 알아보겠습니다. 심볼 연산자 종류 & AND연산자 | OR연산자 ^ XOR연산자 ~ 반전연산자 > 쉬프트연산자 &(AND연산자)와 |(OR연산자)는 이미 알고 계신분들이 많으실거라 생각합니다. 간단하게 얘기하자면 아래와 같습니다. 1011 & 1111 = 1011 즉, 둘다 1이어야만 결과값이 1, 그렇지 않으면 결과값이 0이되는 연산자 입니다. 반대로 OR연산자는 둘 중 하나라도 1이면 결과값이 1, 둘다 0이면 결과값이 0이되는 연산자 입니다. 1011 | 1111 = 1111 이 되겠지요. 그럼 ^(XOR연산자)는 무엇일까요? 먼저 OR연산을 한 뒤에 반전값을 출력하는 연산자입니다. 예를 들어 위에서 OR연산을 하였.. 2022. 9. 5.
대입연산자, 산술연산자 자 이전시간까지 우리는 변수를 선언하여 변수에 어떠한 데이터를 입력하거나 변수의 어떠한 데이터를 출력해보았습니다. 그럼 변수에 저장한 데이터를 가지고 무엇을 할 수 있을까요? 오늘은 그 첫시간으로 대입연산자와 산술연산자에 대해서 배워보겠습니다. 1. 대입연산자 사실 대입연산자는 여러분들도 이미 알고 있습니다. 바로 "=" 입니다. 변수를 선언할 때 우리는 이라고 작성했었습니다. 여기서 "="이 바로 대입연산자입니다. 그래서 의 코딩의 의미는 "정수형 변수 a에 10을 대입한다"이며 이로써 우리는 대입연산자의 정의가 "오른쪽의 값을 왼쪽에 대입한다"임을 알 수 있습니다. 간단하죠? 그리고 아래와 같은 코딩을 작성했다고 가정했을 때 대입연산자를 아래와 같이도 사용이 가능합니다. 대입할 곳이 왼쪽에 위치해야 .. 2022. 2. 23.
변수의 출력 다음은 데이터 입력!! 이전 시간까지 변수에 대해서 알아보았고, 또 변수를 출력하는 방법에 대해서 알아보았습니다. 그럼 이번시간엔 변수에 새로운 데이터를 입력하는 방법에 대해서 알아보겠습니다. 위와 같이 자료형이 int인 변수 a를 선언했다고 가정해 보겠습니다. a를 출력하고 싶을때는 아래와 같이 printf함수를 이용해서 출력하면 됩니다. 그런데 생각해보니 아직 a에는 아무런 값을 저장하지 않았습니다. 오~ 그래도 실행해보니 오류는 나오지 않고 다행히 0으로 출력이 됩니다. 그런데 계산기같은걸 하나 만들려고 해도 우리가 새로운 값을 입력할 수 있어야 하잖아요? 그럴때 어떻게 새로운 값을 입력할 수 있을까요? 그래서 오늘 배웁니다. scanf 함수!!! printf에 이어서 scanf가 등장했습니다. 아마 visual stud.. 2022. 2. 14.
변수 선언과 출력 자 오늘도 이 새까만 도화지에서 시작해 봅시다. 지난시간에 변수에 대해서 알아보았고, 간단히 사용도 해보았습니다. 이번시간에는 조금 더 자세히 알아보겠습니다. 특히 출력하는 법에 대해서요. 1. 변수의 선언 먼저 위와 같이 변수에 들어갈 값을 지정하지 않고 변수명만 변수의 자료형 타입과 함께 선언이 가능합니다. 변수에 들어갈 값은 나중에 따로 지정이 가능합니다. 그리고 같은 자료형이라면 위와 같이 연속적으로 선언이 가능합니다. 그리고 C언어는 대소문자를 구별합니다. 그렇기 때문에 a와 A는 다른 변수입니다. 다른 자료형으로 선언하는 것도 당연히 가능합니다. 그리고 변수선언시에 숫자가 앞에 오면 안됩니다. 문자뒤에 숫자가 오는건 가능합니다. 변수 선언시에 한글도 괜찮습니다. 길게 쓸 수 있지만, 띄어쓰기는.. 2022. 2. 11.
2진법, 10진법, 16진법 그리고 변수 컴퓨터는 2진법을 사용하는데 2진법은 지수라는 개념으로 접근해야 하고 지수에 있어서 가장 중요한 것은 (X)^0 = 1이라는 것입니다. 이것은 사실 말이 되지 않는 내용이지만 수학자들 사이에서 약속되고 정의된 값입니다. 이 값이 1이라고 정의되지 않는다면 다른 지수관련 중요한 법칙들을 정립할 수 없기 때문입니다. 그래서 어떤 값의 0승은 1이다라는 것은 외우는 걸 추천드립니다. 2진수와 10진수, 16진수는 잘 알고 있어야 합니다. 2진수 = Binary, 10진수 = decimal, 16진수 = hex(hexadecimal) 2진화 10진수 = BCD 물론 우리가 컴퓨터처럼 2진수, 16진수, 10진수를 빛의 속도로 계산할 순 없습니다. 그렇지만 컴퓨터가 2진수로 받아들인다는 것을 기억하고, 표현은 1.. 2022. 2. 9.
반응형