본문 바로가기

분류 전체보기88

[C] 배열과 포인터 | 포인터와 배열의 관계, 배열 이름을 포인터처럼 사용하기, 포인터를 배열의 이름으로 사용하기 포인터와 배열의 관계 💡 배열 이름은 해당 배열의 첫번째 요소의 주소값을 갖는다 이를 확인하기 위해 배열을 선언하고 값을 할당한 뒤 각각의 배열 요소 값, 주소, 배열 이름을 printf 해보자. #include int main(void) { int i ; int arr[] = {1,2,3,4,5} ; printf("배열 요소 출력 : "); for(i=0; i 2022. 10. 22.
[C] 포인터 | 포인터란, 포인터 변수의 선언/초기화/호출, &연산자와 *연산자, 포인터의 연산, 포인터에 자료형이 필요한 이유 포인터 (pointer) pointer. 무엇을 point 하는 걸까? C 언어의 포인터는 특정 주소를 가르키고 있다는 개념이다. (즉 해당 주소값을 갖고 있다) 이 주소는 '메모리'주소를 의미하기 때문에 잠시 메모리에 대해 짚고 넘어가보자. 컴퓨터의 주 메모리는 바이트 (= 8개 비트 정보를 저장할 수 있는 크기) 단위로 이루어져 있다. 바이트 단위라는 의미는 각각의 바이트마다 주소가 정해져 있어서 이 주소로서 서로 구분될 수 있다는 것이다. 실행가능한 C프로그램은 code와 data로 이루어져있다. code는 C 소스코드의 각 명령어들을 번역한 기계어 인스트럭션들을 의미하고, data는 C 소스 코드의 변수들을 의미한다. 이 변수들이 선언되고 초기화될 때, 각 변수에 자료형에 맞는 크기의 (적어도 한.. 2022. 10. 22.
[C] 반복문 | while문, do-while문, for 문, break, continue while 문 while (반복 조건) { 반복 조건이 만족하는 동안 실행할 구문(들) } while 문으로 구구단 출력하는 프로그램 생성 #include int main() { int n; int i=1; printf("몇 단을 출력할까요?"); scanf("%d",&n); while(i 2022. 10. 21.
[C] 조건문 | if문 & switch문 if문 💡 조건이 참일 때 실행할 구문이 한 문장일 때에 한해 중괄호 { } 는 생략할 수 있다 if(조건) { 조건이 참일 때 실행할 구문(들) } if(조건) { 조건이 참일 때 수행할 구문(들) } else { 조건이 거짓일 때 수행할 구문(들) } if(조건1) { 조건1이 참일 때 수행할 구문(들) } else if(조건2) { 조건 1이 거짓이면서 조건2가 참일 때 수행할 구문(들) } else { 조건 1과 2가 모두 거짓일 경우 수행할 구문(들 } switch문 n과 case 의 수 모두 정수여야 하며, case문은 필요한 만큼 추가할 수 있다. if ~ else if 문 처럼 조건들을 선형적으로 비교해나가는 게 아니라, n으로 받은 정수와 일치하는 case로 바로 이동하여 조건을 수행하고.. 2022. 10. 21.
[C] 연산자 - 연산자 종류, 연산 규칙, 형 변환 연산자 종류 C언어에는 아래와 같은 다양한 연산자들이 존재한다. 연산자 분류 연산자 산술 연산자 + - * / % 대입 연산자 = += -= *= /= %= 부호 연산자 + - 증감 연산자 ++ -- 관계 연산자 == != = 논리 연산자 || && ! 비트 연산자 ! & >> 2022. 10. 21.
[C] 변수 | 변수란, 변수 선언, 자료형, 데이터 입출력 변수 변수, '변경 가능한 수'를 가지려면 이를 담고 있을 메모리 공간이 필요한데, 변수란 이 메모리 공간에 붙여진 이름이다. 메모리는 각 구조상 바이트별로 고유한 주소를 가지고 있어서, 이 주소를 대상으로 값을 읽고 쓸 수 있다. 프로그래밍 시 직접 메모리 주소를 사용하여 데이터를 제어하기는 어려우므로 이름을 붙여서(=변수를 부여하여) 제어하는 것! 아래 왼쪽 그림을 보자. 4바이트의 메모리에 값을 저장할때 0x1000부터 1x1003 (메모리 주소는 16진수로 되어있다) 까지 저장한다고 해보자. 이 주소들을 매번 외워서 사용하는 번거로움을 피하기 위해 오른쪽 그림 처럼 0x1000부터 1x1003 의 이름은 a 야! 라고 a라는 변수를 통해 메모리에 이름을 붙여주는 것이다. 변수의 종류 - 자료형 변.. 2022. 10. 21.
반응형