본문 바로가기
반응형

PROGRAMMING41

C언어 포인터 심화과정 (포인터 연산) 오늘은 C언어 포인터 심화과정 그 두번째 시간으로 포인터의 연산에 대해서 이야기 해 보려고 합니다. 포인터 기초를 알아보는 시간에 포인터도 변수의 한 종류라고 이야기 했던것 기억하시나요? (상수도 변수의 한 종류이지요. 변하지 않는 변수일 뿐.....) 그렇기에 변수처럼 포인터도 연산이 되지 않을까요? 맞습니다. 연산이 되기는 합니다. 다만 일반적인 연산과 조금 다를 뿐... 먼저 C언어의 포인터 연산은 아래와 같은 규칙을 가지고 있습니다. 1. 포인터는 정수와의 연산은 가능하지만, 실수와의 연산은 불가능합니다. 2. 포인터끼리 대입 혹은 비교 연산은 가능합니다. 3. 포인터끼리의 더하기, 곱하기, 나누기는 아무런 의미가 없을 뿐더러 필요하지도 않습니다. 4. 포인터끼리의 빼기는 가능하며, 그 결과값은 .. 2022. 11. 1.
C언어 포인터 심화과정 (상수포인터) 오늘은 포인터 두번째 날 입니다. 처음 오신 분들은 이전 포스팅을 통해 포인터의 기초를 먼저 보고 오시는 것을 추천드립니다. 오늘은 기초에서 한발자국 더 나아가 포인터의 심화과정을 이야기 해 보려고 합니다. 상수 포인터 우리가 이전에 상수에 대해서 알아보았던 적이 있습니다. 상수는 변수와는 달리 초기에 설정하고 나면 절대 바꿀 수 없는 값이었죠. 어떤 정수를 상수로 선언을 하고자 한다면 아래와 같은 형태를 가졌었습니다. 이렇게 선언하면 a는 100이라는 정수 데이터를 가진 상수로써 프로그램이 끝날때까지 절대 변할 수 없었습니다. 프로그램을 작성할 때 실수로 상수의 값을 바꾸는 코드를 작성해도 오류를 발생시키며 실행되지 않았었죠. 그럼 포인터에도 상수를 적용시킬 수 있는지 알아보겠습니다. 그렇다면 포인터를.. 2022. 10. 31.
C언어 포인터 기초 자 드디어 대망의 포인터입니다. 많은 분들이 C언어를 공부하다가 포인터부분에서 좌절하는 걸로 알고 있습니다. 포인터의 내용이 조금 난해하고 광범위하다보니 그런것 같은데 사실 차근차근 하나씩 알아가다보면 전혀 어려운 내용이 아닙니다. 그럼 포인터의 기초부터 하나씩 이야기 해 보겠습니다. 1. 데이터의 저장위치 자~ 우리가 입력하거나 프로그램이 실행되면서 생성된 데이터는 메모리의 특정공간에 저장됩니다. 데이터의 최소 단위는 bit(비트)이지만 우리가 지금 이야기할 데이터의 단위는 좀 더 의미있는 데이터인 정수나 실수 같은 데이터를 이야기 할 것이므로 byte(바이트)단위로 이야기를 하겠습니다. 정수(int)는 4byte, 실수(float)는 8byte죠. 그래서 메모리상의 단위사이즈를 1byte라고 가정해 .. 2022. 10. 26.
C언어 배열 응용 오늘은 배열의 두번째 시간으로 지난 시간에 배웠던 배열의 기초를 이용해서 좀 더 자세한 배열의 사용법에 대해서 알아보도록 하겠습니다. 1. 2차원 배열 개념 (2중배열) 먼저 이야기 해 볼것은 2차원 배열입니다. 아~ 갑자기 왜 어려운 단어를 가지고 오냐고 생각하실 수도 있는데 전혀 그렇지 않습니다. 우리가 앞서 배웠던 가장 기본적인 배열은 동일한 데이터타입의 나열이라고 했었죠? 즉 한줄을 길~게 줄 서있다고 보시면 됩니다. 그런데 그 줄이 꼭 하나일 필요는 없는거잖아요. 두줄로 서도 되는거잖아요? 이제 그 방법을 알아보겠습니다. 위에서 선언한 배열은 둘다 정수형 배열입니다. 다만 첫번째 배열은 1차원 배열이고, 두번째 배열이 2차원 배열입니다. 1차원 배열의 크기는 3으로 입력되어 있으니 원소가 3개라.. 2022. 10. 25.
C언어 배열 기초 오늘은 배열에 대해서 알아보려고 합니다. 여기서 부터 C언어의 약간 중급단계 느낌입니다. 완전 기초적인 내용은 제 블로그 카테고리중에서 C에 올라온 내용들을 확인 해 주십시오. 1. 배열의 정의와 형식 자~ 그럼 본격적으로 오늘 알아볼 배열에 대해서 이야기 해 보겠습니다. 배열을 네이버에서 검색해 보면 아래와 같이 배열의 정의에 대해서 확인 할 수 있습니다. 일정한 차례나 간견에 따라 벌여 놓음, 동일한 성격의 데이터를 관리하기 쉽도록 하나로 묶는 일. C언어의 배열은 이 정의된 내용 모두가 해당되는 것 같네요. 예를 들어 보겠습니다. 만약에 정수형 변수를 7개 선언하고 싶으면 아래와 같이 선언해야 합니다. 7개만 선언해도 많아보이네요. 그럼 10개, 20개를 이렇게 각각 선언하고자 한다면 조금 피곤해지.. 2022. 10. 24.
C언어 상수 constant 우리가 지금까지 변수에 대해서는 많이 알아보고 잘 사용해 왔습니다. 변수는 값이 변하는 인자이죠. 그럼 반대로 값이 변하지 않는 인자는 없을까요? 당연히 있습니다. 오늘은 값이 변하지 않는 인자인 변수 친구 상수에 대해서 알아보겠습니다. 어릴 때 우리가 처음으로 방정식을 배울 때 상수라는 단어를 처음 배웠습니다. 방정식에서 변하지 않는 수를 상수라고 하죠. C언어에서도 동일한 의미입니다. 변수는 사용자의 입력이나 프로그램상에서 대입연산을 통해 값이 변경되지만 상수는 값을 변경할 수 없습니다. 그럼 좀 더 자세히 알아보겠습니다. 상수를 선언하고 싶다면 아래와 같이 변수의 자료형 앞에 "const"를 붙여주면 됩니다. 이렇게 선언하면 "정수형 상수 a는 7"이라고 선언한 것입니다. 상수가 엄청 특별한 존재인.. 2022. 10. 21.
반응형