목록프로그래밍 언어/C언어 (36)
나의 IT일지
함수란 나열된 명령의 묶음으로, 함수의 식을 정하는 구현부와 함수를 호출하는 호출부로 나뉜다. 구현부에는 함수 값의 자료형을 나타내는 반환형, 호출부에 함수명과 값을 전달하는 경우, 전달받는 값을 저장하기 위한 변수인 매개변수, 함수의 실행이 마무리되고 나온 값을 함수 값으로 반환하는 return문이 있다. 구현부 호출부 반환형 함수명(매개변수1, 매개변수2){ 명령1 명령2 ... return 리턴값;} 함수명(값1,값2); 함수는 main함수 밖에서 정의 되며, main함수의 명령에 호출부를 사용하면, 해당 함수를 실행하도록 되어 있다. 그렇다면, 두 변수의 값을 서로 변경하는 함수를 만들어서 main함수에서 호출하면, 두 변수의 값을 서로 변경시킬 수 있다. #include void swap(int..
포인터란 변수의 주소를 저장하는 공간 변수로, 변수를 사용할 때 변수의 주소로 접근하기 위해서 사용한다. 즉 , 포인터는 변수이기에, 연산이 가능하며 연산의 공식은 "저장중인 주소값+증감*저장한 변수의 자료형 크기"이다. 이는 배열의 요소의주소를 찾을 때 유용하다. #include void main() { int arr[3] = { 1,2,3 }; printf("배열주소:%p\n", &arr); printf("배열명:%p\n", arr); printf("첫번째 주소:%p\n", &arr[0]); printf("두번째 주소:%p\n", & arr[1]); printf("세번째 주소:%p\n", & arr[2]); } 위의 코드를 보면, 배열주소와 배열명과 첫번째 요소의 주소가 같은 것을 확인 할 수 있다...
포인터란 변수의 주소를 저장하는 공간이다. 즉, 포인터는 변수의 주소를 저장하는 것 뿐이지, 저장하는 값이 변할 수 있는 변수라는 것이다. 그래서 포인터도 연산이 가능하다. 포인터 연산 주소는 정수같아 보이지만 자료형에 대한 정보를 가지고 있는 특별한 값이기 때문에, 자유롭게 할 수 없고 정해진 연산만 가능하다. 포인터의 연산은 더하거나 빼기만 가능하며, 두 개의 포인터를 더할 수 없다. 즉, 곱셈,나눗셈은 불가능 하며, 서로 다른 포인터를 더할 수는 없다. (포인터명을 ptr로 한다.) 연산 가능 연산 불가능 ptr = ptr + 1 ptr = ptr + 2 ptr++ ++ptr ptr-- --ptr ptr = ptr*2 ptr = ptr/2 ptr = ptr1+ptr2 #include void mai..
C언어는 컴퓨터의 메모리 주소를 이용해 메모리 안에 기억되어 있는 값을 제어할 수 있는 시스템 프로그래밍이 가능한 언어이다. 즉, 컴퓨터안의 메모리 주소에 접근이 가능하며, 그 안의 값을 제어할 수 있다. 게다가 같은 변수명을 사용하더라도 함수나 실행문이 다르면, 변수의 주소가 다르기 때문에, 서로 다른 변수가 된다. 그래서 함수에서 다른 함수의 변수를 사용하기 위한 방법으로 주소를 사용한다. 포인터 포인터란 변수의 주소를 저장하는 공간으로, 변수를 사용할 때 변수의 이름이 아닌 주소로 접근하기 위해 사용한다. 포인터형 * 포인터변수명; 위의 구조는 포인터를 선언하는 구조식으로, 포인터 변수에 변수의 주소를 저장할 때 사용한다. 이때 포인터형은 포인터 변수를 통해 변수에 값을 저장할 때, 포인터 변수가 ..
배열이란 변수를 묶어놓은 저장공간으로, 1차원 배열과 다차원 배열이 있다. 배열은 모든 요소가 같은 자료형을 가지며, 요소가 연속적으로 나열되어 있으며, 메모리에 물리적으로도 연결되어 있다. 그래서 변수와 달리 배열은 요소의 숫자로 저장공간을 불러 올 수 있기 때문에 반복문에 사용하기 좋다. 배열 컴퓨터는 데이터의 값을 저장하기 위해선 메모리에 변수를 선언해서 변수에 값을 저장한다. 그런데 이러한 변수도 데이터를 1개만 저장을 할 수 있다. 하지만 우리는 많은 데이터값을 다루기 때 my-it-diary.tistory.com 다차원 배열 다차원 배열에는 배열을 요소로 가진 배열로, 비슷한 데이터 값들을 구별해서 저장할 때 주로 사용된다. 종류로는 평면적(행,열)으로 저장하는 2차원 배열과 입체적(행,열,면..
컴퓨터는 데이터의 값을 저장하기 위해선 메모리에 변수를 선언해서 변수에 값을 저장한다. 그런데 이러한 변수도 데이터를 1개만 저장을 할 수 있다. 하지만 우리는 많은 데이터값을 다루기 때문에, 많은 데이터를 한 번에 저장할 수 있는 방법이 필요하다. 배열 위의 문제점을 해결하기 위한 것이 배열이라는 존재이다. 배열이란 같은 자료형을 가진 여러 개의 변수를 이어놓은 형태를 가진 변수의 묶음으로, 같은 변수를 사용하여 많은 데이터를 처리할 때에 사용한다. 배열의 종류로는 1차원배열과 다차원배열이 있는 데, 여기에선 1차원 배열에 대해서 알아볼 것이다. 자료형 배열명[요소 개수]; 위의 구조는 배열의 선언 방법으로, 어떤 형태의 데이터를 저장할 것인지 선언하는 자료형, 배열의 이름인 배열명, 배열에 몇 개의 ..