OneDev
close
프로필 사진

OneDev

github: @ws1811

  • 분류 전체보기 (101) N
    • Language (42)
      • C (30)
      • C++ (6)
      • JAVA (6)
      • Python (0)
    • 자료구조&알고리즘 (16)
      • BOJ (8)
      • 프로그래머스 (8)
    • WEB (12)
      • HTML (6)
      • jQuery (4)
      • Spring (1)
      • React (1)
    • 네트워크 (1)
      • SOAP (0)
    • Linux\Git (5)
    • DB\SQL (12) N
      • SQL(Oracle) (6)
      • MongoDB (1)
      • PL\SQL (0)
      • TypeDB (3) N
    • Exceptions\Errors (3)
    • 기타 (10)
      • Club K-MOOC 서포터즈 (8)
      • 기타 (1)
  • 홈
  • 태그
  • 방명록
[C] 8. 오버플로우(overflow)

[C] 8. 오버플로우(overflow)

1. 서론 우리는 지금까지 변수를 이용해 여러가지 연산을 수행하는 방법에 대해 학습하였다. 숫자와 연산자만 이용해 모든 연산을 할 수 있다면 참 편하고 좋으련만 애석하게도 C에서는 연산을 할 때 제약이 있다고한다. 그 이유는 변수의 타입 마다 보관할 수 있는 데이터의 크기가 정해져있기 때문이다. 예를 들면 int형 변수는 -2147483648 부터 2147483647 까지의 정수 데이터를 보관할 수 있다. 그렇다면, 보관할 수 있는 크기를 넘어가는 데이터를 변수에 저장하고자 하면 무슨 일이 발생할까? 앞서 int 형 변수가 21447483647 까지의 정수 데이터를 보관할 수 있다 했으므로, 다음과 같이 코드를 작성한 뒤 실행시켜보자. #include int main() { int a = 21474836..

  • format_list_bulleted Language/C
  • · 2022. 7. 15.
[C] 7. 연산자(2) - 비트연산자

[C] 7. 연산자(2) - 비트연산자

연산자 중의 하나인 비트연산자에 대해 알아보자. 비트연산자는 비트(bit) 하나하나에 대해 연산을 하는 연산자이다. (Recall : 비트 = 컴퓨터에서 숫자의 최소 단위 / 1비트는 0또는 1을 나타냄) 이렇게 설명하면 무슨말인지 잘 와닿지 않을 확률이 높기때문에 일단 비트연산자에 어떤것들이 있는지 살펴보도록 하자. 1. AND 연산(&) AND 연산은 아래와 같은 규칙을 통해 연산되는데, 집합론 초반 명제에 대해 배울때 사용했던 truth table과 유사한 형태를 띄고 있으니 수학을 전공하신 분들이라면 직관적으로 이해하실 수 있을 듯 하다. 연산 결과 1 & 1 1 1 & 0 0 0 & 1 0 0 & 0 0 비트연산은 각 자리를 연산한다. 아래는 예시로 1010 & 0011 의 연산 과정을 나타낸 ..

  • format_list_bulleted Language/C
  • · 2022. 7. 14.
[C] 6. 연산자(1) -산술연산자/대입연산자/복합대입연산자

[C] 6. 연산자(1) -산술연산자/대입연산자/복합대입연산자

이번에는 C언어에서 컴퓨터에 어떻게 연산을 명령하는지 알아보자. 이를 위해 산술연산자, 대입연산자, 비트연산자 등등에 대해 학습해볼 계획이다. 이번 포스팅에서는 산술연산자와 대입연산자에 대해서 알아보도록하자. 1. 산술연산자 (Aritmetic Operator) 산술 연산자는 가장 기본적인 연산인 사칙연산에 사용되는 연산자이다. 일상 생활에서 많이 사용하는 더하기, 곱하기, 빼기, 나누기 등이 이에 해당한다. 산술 연산자들은 아래와 같은 것들이 있다. 연산자 연산 + 더하기 - 빼기 * 곱하기 / 나누기 (몫 구하기) % 나머지 구하기 +참고) 나눗셈(/) 연산을 나눗셈에서 몫을 출력하도록 사용할 수 있다. 반환값의 자료형을 정수형으로 지정하면 몫에 해당하는 정수부분만 출력되기 때문이다. #include..

  • format_list_bulleted Language/C
  • · 2022. 7. 14.
[C] 5. 변수(Variables)

[C] 5. 변수(Variables)

1. 변수란? 컴퓨터는 많은 것을 기억해야 하고, 이는 컴퓨터의 메모리에 전기적 신호를 써 넣음으로써 달성된다. 이해를 돕기 위해 인기게임인 리그오브레전드(이하 롤)을 플레이 하는 경우를 생각해 보자. 게임을 진행하면서, 챔피언의 체력, 공격력, 레벨, 골드, 미니언의 체력, 등등등이 시시각각 변하는 모습을 어렵지 않게 상상할 수 있다. 이렇게 실시간으로 변화하는 모든 것들을 컴퓨터가 기억해야만 우리는 게임을 제대로 즐길 수 있는 것이다. 그렇다면 컴퓨터는 이러한 데이터들을 어떻게 기억할 수 있을까? 바로 컴퓨터의 메모리 램(RAM)에 저장하는 것이다. 보통 램을 표시할 때 위와 같이 표시한다. 각 방에 데이터들이 저장된다고 생각하면 될듯하다. 이 때 컴퓨터는 각 방에 이름을 붙이는데 0번,1번,2번....

  • format_list_bulleted Language/C
  • · 2022. 7. 5.

[C++] 변수 선언

1. C++의 변수선언은 C와 거의 동일하다 변수를 선언하는 방법부터, 선언시 주의해야 할 사항까지 C++의 방법은 C의 방법을 거의 그대로 물려받았다. 변수의 이름을 정할 때 주의해야 할 점들을 복기해보면 다음과 같다: (1) 숫자로 시작 불가 (2) C++에서 사용중인 키워드는 사용 불가 (예 : return 같은 이름 설정 불가) (3) white space 사용 불가 (스페이스바, 엔터, 탭 등 여백은 변수로 설정 불가) 변수를 선언하는 예를 보자 : #include int main() { int a;--> int형 변수 a 선언 char c;--> char형 변수 c 선언 double d;--> double형 변수 d 선언 float f;--> float형 변수 f 선언 return 0; } 변..

  • format_list_bulleted Language/C++
  • · 2022. 7. 4.

[C++] 이름공간(namespace)

1. 이름공간(namespace)이란? 이름공간(namespace) 란 어떤 정의된 객체에 대해 어디에 소속되어있는지 지정해 주는 것이다. 코드의 길이가 늘어남에 따라 중복된 이름을 가진 함수들이 늘어났고, C++에서는 이들을 구분하기 위해 이름이 같더라도 소속된 이름공간(namespace)가 다르다면 다른 함수인 것으로 취급하게 되었다. 예를 들자면 영국에 사는 찰스와 미국에 다른 찰스가 서로 다른 느낌이다. 아래의 예를 보자. std::cout; 위의 코드는 std 라는 namespace 에 저장되어 있는 cout 을 의미한다. 만약 std 없이 그냥 cout 만 적게된다면 컴파일러는 cout을 찾지못한다. 어디에 소속된 cout인지 알 길이 없기 때문이다. 2. namespace를 정의하는 방법 n..

  • format_list_bulleted Language/C++
  • · 2022. 7. 4.
  • navigate_before
  • 1
  • ···
  • 13
  • 14
  • 15
  • 16
  • 17
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (101) N
    • Language (42)
      • C (30)
      • C++ (6)
      • JAVA (6)
      • Python (0)
    • 자료구조&알고리즘 (16)
      • BOJ (8)
      • 프로그래머스 (8)
    • WEB (12)
      • HTML (6)
      • jQuery (4)
      • Spring (1)
      • React (1)
    • 네트워크 (1)
      • SOAP (0)
    • Linux\Git (5)
    • DB\SQL (12) N
      • SQL(Oracle) (6)
      • MongoDB (1)
      • PL\SQL (0)
      • TypeDB (3) N
    • Exceptions\Errors (3)
    • 기타 (10)
      • Club K-MOOC 서포터즈 (8)
      • 기타 (1)
인기 글
전체 방문자
오늘
어제
Copyright © one_dev 모든 권리 보유.
SKIN: Copyright © 쭈미로운 생활 All rights reserved. Designed by JJuum.
and Current skin "dev-roo" is modified by Jin.

티스토리툴바