Home
CS with me
Cancel

C언어 (12) 함수

C언어 (12) 함수 책을 보면 함수를 간단하게 소개하고, 그 다음이 배열, 포인터 순서로 하는 것이 대부분이다. 하지만 포인터, 포인터-배열 관계, 함수, 포인터-함수 관계로 잇고 싶어서 순서를 조금 꼬았다. 흐름만 이해하면 함수는 쉽게 이해하는 것 같다. 함수 수학에서 함수란 어떤 x를 넣었을 때 y라는 값을 내는 f(x)같은 것이다....

C언어 (11) 포인터와 배열2

C언어 (11) 포인터와 배열2 포인터와 배열의 관계를 이어서 더 보자. 포인터 변수를 통한 1차원 배열 접근 배열의 이름은 배열의 시작 주소와 같다고 했다. 그리고 배열의 주소에 +1, +2를 하면 주소는 배열의 요소 크기만큼 증가한다. #include <stdio.h> int main() { int arr[5] = { 1...

C언어 (10) 포인터와 배열

C언어 (10) 포인터와 배열 포인터에 대해 간단히 보았는데, 활용에 대해서는 아직 잘 모르겠다. 포인터의 특성을 좀 더 보고, 배열과 연관지어 보며 어떻게 사용하는지 알아보자. 다중 포인터 int** ppnum; 이런 포인터는 존재할 수 있을까? 포인터 변수도 주소를 가지고, 8바이트 또는 4바이트의 크기를 가진 변수이다. 그렇다면 포인터...

C언어 (9) 포인터

C언어 (9) 포인터 C언어에서 가장 중요하고 이해하기 어려운 개념으로 꼽히는 것이 포인터일 것이다. 변수와 배열 이야기를 하며 계속 주소를 언급했는데, 이 주소를 어떻게 쓸 수 있는가?에 대한 이야기다. 중학생 때 처음 C언어를 학원에서 배웠었는데 포인터는 어려우니까 넘어가자~라고 말했었다. 지금 생각해보면 이해가 안되는 말인 것이 포인터...

C언어 (8) 배열

C언어 (8) 배열 학교의 모든 학생의 성적을 변수에 저장하고 싶은데 각각 변수를 생성하면 변수의 개수가 너무 많아진다. 이 때 같은 자료형을 가진 변수를 묶어 배열이라는 자료구조로 처리할 수 있다. 배열 변수란 우리가 프로그램을 작성할 때 숫자나 문자 같은 데이터를 저장하기 위한 공간이다. 변수는 저장되는 주소가 있고, 공간이 있다. 배...

C언어 (7) 반복문

C언어 (7) 반복문 반복문이랑 동일한 문장을 여러 번 반복하는 구조이다. 동일한 작업을 계속해야 한다면 똑같은 문장을 crtl+c, crtl+v하는 것보다 반복문을 사용하는 편이 좋다. 반복문 노트북을 구매하기 위해 월급을 받아 저축하는 사람의 경우를 프로그램으로 만들어보자. 저축한 돈이 240만원 이상이 될때까지 아르바이트를 하고, 이...

C언어 (6) 조건문

C언어 (6) 조건문 프로그램은 사용자의 선택에 의해 동작해야 한다. 입력이나 신호에 따라 변화하는 프로그램을 만들기 위해 조건문을 알아야 한다. 조건문 자판기 내부의 과정을 간단하게 도식화해서 보면 이런 동작들이 있을 것이다. 이 때 마름모안에 들어있는 문장들을 조건문이라고 부르고, 문장의 참, 거짓에 따라 동작이 바뀐다. 여태까지 ma...

C언어 (5) 연산자

C언어 (5) 연산자 컴퓨터의 연산이란 사칙연산을 포함해 대입, 지수, 조건 등이 있다. 상황에 맞는 연산을 할 수 있도록 연산자를 알고 있어야한다. 분류 연산자 설명 대입 연산자 = 대입 산술 연산자 ...

C언어 (4) 자료형2

C언어 (4) 자료형2 정수형 변수에 이어 실수형 변수를 알아보자. 자료형 변환에 대해서도 알아보자. 자료형 키워드 바이트 수 범위 정수형 short 2 -32,768 ~ 32,767 ...

C언어 (3) 자료형

C언어 (3) 자료형 변수를 선언할 때 어떤 자료형을 받을지 앞에 적어줘야 한다. 자료형이란 뭘까? 이 자료형에 따라 메모리에 어떻게 값이 저장되는지 자세히 알아보자. 자료형 데이터는 정수형, 실수형, 문자형과 같이 다양한 type을 가진다. 이 type이 자료형이다. 나누는 기준은 변수 앞에 붙여진 int, double 등의 키워드를 보고 ...