편집하면 당신의 IP 주소가 공개적으로 기록됩니다.
계정을 만들고 로그인하면 편집 시 사용자 이름만 보이며, 위키 이용에 여러 가지 편의가 주어집니다.
편집을 취소할 수 있습니다.
이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 |
당신의 편집 |
481번째 줄: |
481번째 줄: |
| </syntaxhighlight> | | </syntaxhighlight> |
|
| |
|
| 그러면 다중 포인터는 대체 어디에 쓰는가? 다중 포인터는 보통 다차원 동적 배열을 만들 때 쓴다. | | 그러면 다중 포인터는 대체 어디에 쓰는가? 다중 포인터는 보통 다차원 동적 배열을 만들 때 쓴다. [[작성중]] |
| 이 다차원 배열중 흔히 볼 수 있는 예시는 프로세스 진입 지점인 int main()에서 찾을 수 있다.
| |
| <syntaxhighlight lang="c">
| |
| #include <stdio.h>
| |
| | |
| int main(int argc, const char **argv)
| |
| {
| |
| for (int i = 0; i < argc; ++i)
| |
| {
| |
| printf("%d: %s\n", i, argv[i]); // *(argv + 1)과 동일
| |
| }
| |
| }
| |
| </syntaxhighlight>
| |
| C언어에서 문자열(String)또한 단순 1차원 배열에 불과하지만 이런 배열을 포함하는 또다른 배열을 만드는 것이 가능하다.
| |
| 이를 통해 char* 는 배열의 주소를 담고 있지만 이 배열의 주소를 담고 있는 또다른 포인터를 만듬으로써 2차원의 배열을 만드는 것이 가능하다. 이를 통해 3차원은 물론 그 이상의 다차원 배열을 만드는 것 또한 가능하다.
| |
|
| |
|
| ====함수포인터==== | | ====함수포인터==== |