일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- tipssoft
- Tips강좌
- 문법
- 이지스퍼블리싱
- Direct2D
- Visual Studio
- c
- Programming
- Kotlin
- c++
- Desktop
- c#
- 김성엽
- 연산자
- 리뷰
- Windows
- 백준
- Tips프로그래밍강좌
- Javascript
- 포인터
- CS
- 함수
- doit코틀린프로그래밍
- 지식나눔강좌
- Win32
- VS ERROR
- 티스토리
- 배열
- 프로그래밍
- 알고리즘
Archives
- Yesterday
- Today
- Total
목록수정 (1)
F.R.I.D.A.Y.
배열은 수정 가능한데 포인터는 수정 불가?
char str1[] = "abcdefg"; char *str2 = "abcdefg"; 가끔씩, 배열과 포인터를 혼동하는 사람들이 있어서. 배열 str1은 문자열 "abcdefg"에서 각각의 문자를 수정할 수 있다. 그러나 포인터 str2 는 각각의 문자를 수정할 수 없다. 사실, 굉장히 간단한건데 기본적인 프로그램의 구조를 몰라서 생기는 문제라고 생각한다. 배열에서도, 포인터에서도 쌍따옴표로 묶은 문자열로 값을 초기화 할 수 있다. 그런데, 배열은 정확히 하면 초기화를 편하게 할 수 있도록 추가 문법을 제공한 것으로 볼 수 있다. 따라서 char str1[] = { 'a','b','c','d','e','f','g','\0' }; 일일이 대입이 되기 때문에 변경이 가능하다. 그러나 포인터에 값을 대입하는..
DEV/C C++
2018. 9. 25. 17:30