Programming/C
-
- [C] 일차원 배열의 시프트(Shift)
일차원 배열의 시프트(Shift) 배열의 1번 인덱스부터 사용하기개발을 한다거나 또는 과거와 같이 메모리 절약을 위해서는 배열을 0번 인덱스부터 사용하는 것이 일반화되어 있다.하지만, 코딩 테스트를 위해서 수학적인 계산을 한다거나 또는 알고리즘(Algorithm)을 활용하여 문제를 해결하기 위해서는 0번 인덱스를 비워두고 1번 인덱스부터 사용하는 것이 문제를 계산하기에 조금 더 편리할 때가 많이 있다.배열을 1번 인덱스부터 사용하고자 할 때, 배열의 0번 인덱스의 공간을 만들지 않고 바로 1번 인덱스의 공간부터 만들어 사용할 수는 없다.따라서 배열을 선언할 때 입력으로 들어오는 데이터의 최대 개수(N)부터 배열의 길이는 항상 1개가 더 많도록(N+1) 선언되어야 한다. 왼쪽 시프트(Left Shift)일..
2022.09.29 -
- [C] 배열(Array)
배열(Array) 배열(Array)많은 양의 데이터를 한꺼번에 일괄적으로 처리하고자 할 때, 유용하게 사용될 수 있는 변수들의 모임배열 선언 방법int a[10]; // 자료형 배열_이름[배열_길이] 배열의 각각의 요소 a[0], a[1], a[2], …, a[9] 를 요소(Element)라고 한다.배열 각각의 값은 대괄호([]) 안의 숫자로 나타내는데, 이를 배열의 인덱스(Index) 또는 첨자라고 한다. 배열의 선언 방법방법 ① int a[5] = { 1, 2, 3, 4, 5 };배열의 길이와 요소를 선언과 동시에 초기화 해주는 방법이다. 방법 ②int b[] = { 1, 2, 3, 4, 5 };배열의 길이는 초기화하지 않고, 배열의 요소를 선언과 동시에 초기화 해주는 방법이다.프로그램은 초기화..
2022.09.28 -
- [C] 포인터(Pointer) 연산 정리
포인터(Pointer) 연산 정리들어가며포인터의 연산을 하나의 코드로 이해해보자. 코드#include void main() { int a[2] = { 4, 9 }; int *p = a; printf("1 : %d \n", *p); printf("2 : %d \n", (*p)++); printf("3 : %d \n", *p++); printf("4 : %d \n", *p--); printf("5 : %d \n", *(p++)); printf("6 : %d \n", *p); printf("7 : %d \n", *--p); printf("8 : %d \n", ++*p); printf("9 : %d \n", *(++p));} 더보기1 : 4 2..
2022.06.24