배열 포인터의 용도는 무엇입니까?
int *a[4]; //指针数组
포인터 배열은 여러 포인터를 동시에 선언하는 것과 같습니다. 배열의 각 요소는 포인터입니다. 이해하기 쉽습니다. 배열 포인터에 중점을 두겠습니다.
int (*p)[4]; //数组指针
배열 포인터는 한 번에 하나의 포인터를 선언하는 것과 같습니다. 단지 이 포인터가 매우 특별한 배열을 가리키는 것뿐입니다.
[]는 *보다 우선순위가 높으므로 배열 포인터 선언 시 ()를 추가해야 합니다.
예제 1:
#include<stdio.h>#include<stdlib.h>void main() { //数组指针的用法,用处。 int b[16]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; int (*p)[4]; //该语句是定义一个数组指针,指针步长为4个int即16位。 //int *p2=&b; p=&b; int i=0; while(i<16) { printf("%d\t",(*p)[i]); //printf("%d\t",*p2++); i++; } }
printf("%dt",(*p)[i]); 출력 배열 b를 탐색합니다.
배열 포인터는 남동생과 동일합니다. 남동생의 성격. Number, 첨자 값을 통해 특정 숫자, 즉 배열의 어떤 숫자를 직접 액세스할 수 있습니다. 배열 포인터 첨자가 증가하면(i++) 포인터는 변경되지 않습니다.
이것은 정수 포인터를 사용하여 직접 구현할 수 있으며 더 편리하고 간결합니다. 위의 주석 섹션을 참조하세요.
예제 2: 예 1의 while() 문을 바꿉니다.while(i<4) { printf("%d\t",(*p++)[0]); i++; }
배열 포인터가 증가하면(*p++) 포인터는 이동된 크기(유형)를 가리킵니다.
사실 위 문장은 다른 유형의 포인터에도 적용됩니다.
예: int *p; //포인터는 정수 포인터인 int를 가리킵니다. 정수형 변수를 저장할 수 있는 주소입니다. 무슨 소용이 있나요? 즉, p++를 사용하면 다음 int형 번호를 가리킬 수 있다. 그렇다면 포인터는 배열을 가리키는 데 사용되는 경우가 많습니다. 모두 int 유형이므로 단계 크기가 파생됩니까? 정수 포인터의 단계 크기는 sizeof(int)이며 4바이트입니다. //마찬가지로 float 유형 포인터, char 유형 포인터 등을 얻을 수 있습니다. . . 같은 방법으로 배열 포인터를 얻을 수 있는데, 그 특징은 무엇인가요? 배열의 첫 번째 주소를 저장합니다. 사용? p++를 사용하면 다음 배열을 가리킬 수 있습니다. 그래서? 이를 사용하여 2차원 배열을 가리킵니다. 2차원 배열의 각 요소는 동일한 유형(모두 int 배열)이므로 단계 크기를 추론할 수 있습니까? sizeof(int[4]), 즉 16//직접 말하면 배열 유형을 가리키는 포인터입니다예 3: 배열 포인터는 2차원 배열을 가리킵니다.#include<stdio.h>#include<stdlib.h>void main() { int a[3][4]={{1,2,3,4},{11,12,13,14},{21,22,23,24}}; int (*p)[4]; //该语句是定义一个数组指针,指针步长为4个int即16位。 p=&a; int i=0; while(i<3) { //printf("%d\t",(*p)[i]); //数组指针,指向的是一个数组整体,相当于指针也带了下标,当执行i++操作时,下标+1,得到该数组的下一个元素, //在该例中,指针没有位移,所以依次输出为1 2 3 printf("%d\t",(*p++)[0]); //整型数组类型的指针,指向的是一个数组整体,当执行*p++操作时,指针位移该数组长度的位数 //在该例中,即指针位移4个int的长度,所以输出是1 11 21 i++; } }
C Video Tutorial
"위 내용은 배열 포인터의 용도는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 배열 포인터는 배열을 작동하는 데 사용됩니다. 배열 포인터는 배열의 내부 구성 메커니즘입니다. 각 배열에는 해당 "현재" 단위(요소)를 가리키는 내부 포인터가 있습니다. 이 포인터는 처음에 배열 포인터 위치를 이동하거나 변경하여 현재 배열의 첫 번째 단위를 가리킵니다. 을 사용하면 배열의 모든 요소에 액세스할 수 있습니다. PHP는 배열 포인터를 제어하기 위한 여러 내장 함수(current(), pos(), key(), next(), prev(), end(), Reset()))))를 제공합니다.

PHP는 웹 개발에 널리 사용되는 서버사이드 스크립팅 언어입니다. 구문은 C 언어와 유사하며, 편리한 기능과 라이브러리도 많이 제공합니다. PHP에서 next() 함수는 배열 포인터를 다음 요소로 이동하는 데 일반적으로 사용되는 함수입니다. 1. 배열 포인터란 무엇입니까? PHP에서 배열은 많은 양의 정렬된 데이터를 저장할 수 있는 매우 편리한 데이터 구조입니다. 배열의 각 요소에는 요소 값에 액세스하고 수정하는 데 사용할 수 있는 해당 첨자가 있습니다. 아래 첨자를 통해 배열 요소에 액세스하는 것 외에도

Golang 언어의 지속적인 개발로 인해 함수 포인터 배열과 배열 포인터도 Golang 프로그래밍의 중요한 부분이 되었습니다. 이 글에서는 Golang 함수에서 포인터 배열과 배열 포인터의 응용 기술에 대해 논의하고, 실용적인 샘플 코드와 관련 설명을 제공합니다. Golang 포인터 배열의 기본 개념 먼저 Golang 포인터 배열을 이해해 보겠습니다. 포인터 배열은 다양한 변수나 객체에 대한 포인터 배열인 데이터 유형입니다.

배열 포인터와 포인터 배열의 차이점은 다음과 같습니다. 1. 배열 포인터는 포인터이고 저장된 포인터 배열은 배열입니다. 2. 배열 포인터는 int *p = arr;로 선언되고 포인터 배열은 int *로 선언됩니다. arr[ 5];; 3. 배열 포인터는 p[i] 형식으로 배열의 요소에 액세스할 수 있는 반면, 포인터 배열은 arr[i] 형식으로 배열의 요소에 액세스해야 합니다.

차이점: 포인터 배열의 경우 우선 배열이고 배열의 요소는 모두 포인터입니다. 즉 배열이 포인터를 저장한다는 의미는 배열 자체에 의해 결정됩니다. 배열 포인터, 먼저 배열을 가리키는 포인터입니다. 즉 배열에 대한 포인터이며 32비트 시스템에서 배열이 가리키는 바이트 수는 항상 4바이트를 차지합니다. 점유하는 경우 이는 단정할 수 없으며 특정 상황에 따라 다릅니다.

PHP에서는 재설정 함수를 사용하여 배열 포인터를 배열의 시작 부분으로 다시 이동할 수 있습니다. 재설정 기능을 사용하기 전에 배열 포인터의 개념을 알아야 합니다. 배열 포인터는 현재 연산 중인 배열 요소를 가리키는 내부 포인터입니다. PHP에서는 foreach 루프를 사용하여 배열을 탐색하거나 while 루프와 배열 포인터를 사용하여 배열을 탐색할 수 있습니다. 그러나 while 루프와 배열 포인터를 사용하여 배열을 탐색하는 경우 재설정 함수를 사용하여 배열 포인터를 배열의 시작 부분으로 다시 이동해야 합니다. 재설정 사용

포인터 배열과 배열 포인터는 정의와 사용이 다른 두 가지 다른 유형의 개념입니다. 1. 포인터 배열은 각 요소가 포인터 유형인 배열이고, 배열 포인터는 포인터이며 첫 번째를 가리키는 포인터입니다. 2. 포인터 배열의 선언 방법은 "type *array[]"이고, 배열 포인터의 선언 방법은 "type (*ptr)[size]"입니다.

배열 포인터와 배열 참조 사이에는 다음과 같은 차이점이 있습니다. 역참조 필요: 배열 포인터는 역참조되어야 하지만 배열 참조는 그렇지 않습니다. 포인터 산술: 배열 포인터는 포인터 산술을 지원하지만 배열 참조는 지원하지 않습니다. 주소: 배열 포인터는 배열의 첫 번째 요소 주소를 저장하지만 배열 참조는 주소가 아닙니다. 상수 kval: 배열 포인터는 constkval을 가리킬 수 있지만 배열 참조는 그럴 수 없습니다. 배열 크기: 배열 포인터는 배열 크기를 저장하지 않는 반면 배열 참조는 암시적으로 배열 크기를 포함합니다.
