inflearn logo
강의

講義

知識共有

Cで学ぶデータ構造と様々な例の練習

C言語基礎文法レビュー - 配列、ポインタ、文字列、動的メモリ割り当て

배열대신 포인터 arithmetic으로 써야하는 이유가 있을까요?

627

junhyunpark3058187

投稿した質問数 5

0

배열대신 포인터 arithmetic으로 써야하는 이유가 있을까요?

c

回答 1

2

communityai8509

안녕하세요, 인프런 AI 인턴이에요.

포인터 산술 연산을 사용하는 이유는 여러 가지가 있을 수 있습니다. 가장 일반적인 이유 중 하나는 메모리 접근의 유연성입니다.

배열은 고정된 크기를 가지고 있기 때문에 일정한 간격으로 요소에 접근할 수 있습니다. 하지만 포인터 산술 연산을 사용하면 메모리 주소를 직접 조작하여 요소에 접근할 수 있습니다. 이는 동적으로 크기가 변하는 데이터 구조에 유용할 수 있습니다.

또한, 포인터 산술 연산은 배열의 요소를 반복적으로 접근할 때 효율적입니다. 포인터는 메모리 주소를 직접 저장하고 있기 때문에 인덱스를 계산하는 과정을 거치지 않아도 되므로 성능 향상을 기대할 수 있습니다.

물론, 배열을 사용하는 것이 간단하고 직관적일 수 있습니다. 따라서 어떤 방식을 선택할지는 사용자의 상황과 선호도에 따라 다를 수 있습니다.

포인터 산술 연산을 사용하여 배열을 대신하는 것은 C 언어에서 많이 사용되는 방법입니다. 하지만 C++부터는 STL 컨테이너를 사용하는 것이 좋은 방법으로 알려져 있습니다.

더 자세한 내용을 알고 싶으시면 추가 질문 주세요. 감사합니다.

안녕하세요. 계속 프로젝트를 해야지 하다가 결제하고 환경 설정 중입니다.

0

14

1

[문제 해결]전화번호부 v1.0(1) 인덱스 관련하여 질문입니다. 강의를 아무리 돌려봐도 인덱스를 업데이트 안하네요.

0

53

2

music libaray

0

68

1

자료구조 1강, 코드, array --> tmp 할당, 방 4개에서 방 8개로 이사함 ㅅㅅ

0

98

1

자료구조 1강, 코드, array --> tmp 할당, 방 4개에서 방 8개로 이사함 ㅅㅅ

0

98

0

search_song함수의 ptr_snode = ptr_snode;의 의미가 궁금합니다

0

407

1

스택 구현

0

368

0

학습 자료 pdf 파일에 관해서

0

844

1

포인터 참조 질문

0

319

1

redefinition; different basic types 오류

2

1270

2

한글이 깨지는 경우 어떻게 해결하나요?

0

343

0

안녕하세요. c언어 독학중인 학생입니다.

0

554

1

search 함수의 선언 궁금증

0

284

1

두번째 예제 질문있습니다!

0

208

0

메모리 동적 할당에서 메모리공간을 확장시킬 때

1

393

0

realloc함수 쓰지 않는이유

0

262

0

안녕하세요 교수님. free()관련해서 질문 있습니다.

0

239

0

동적으로 할당된 메모리의 life time 관련하여 질문 있습니다.

0

276

0

Node에 대한 코드 안에 링크필드 선언할 때

3

210

0

stack 구현에서 동적할당중 형변환의 유무에 관한 질문

0

293

0

find함수가 제대로 작동을 안합니다

0

275

1

3강 문자열에 등장하는 코드에 관한 질문입니다.

1

302

0

컴파일 실행 중에 오류가 났는데, 구글링으로도 해결방법을 모르겠어서 남깁니다.

0

238

0

21분23초 char **tmp1에서 캐스팅을 해주는 이유는 무엇인가요?

0

350

2