Prerrequisito: Introducción a los punteros
Puntero a array
C++
#include <iostream> using namespace std; int main() { int arr[5] = { 1, 2, 3, 4, 5 }; int *ptr = arr; cout <<"\n"<< ptr; return 0; } // thus code is contributed by shivanisinghss2110
C
#include<stdio.h> int main() { int arr[5] = { 1, 2, 3, 4, 5 }; int *ptr = arr; printf("%p\n", ptr); return 0; }
C++
// C++ program to understand difference between // pointer to an integer and pointer to an // array of integers. #include <iostream> using namespace std; int main() { // Pointer to an integer int *p; // Pointer to an array of 5 integers int (*ptr)[5]; int arr[5]; // Points to 0th element of the arr. p = arr; // Points to the whole array arr. ptr = &arr; cout << "p =" << p <<", ptr = "<< ptr<< endl; p++; ptr++; cout << "p =" << p <<", ptr = "<< ptr<< endl; return 0; } // This code is contributed by SHUBHAMSINGH10
C
// C program to understand difference between // pointer to an integer and pointer to an // array of integers. #include<stdio.h> int main() { // Pointer to an integer int *p; // Pointer to an array of 5 integers int (*ptr)[5]; int arr[5]; // Points to 0th element of the arr. p = arr; // Points to the whole array arr. ptr = &arr; printf("p = %p, ptr = %p\n", p, ptr); p++; ptr++; printf("p = %p, ptr = %p\n", p, ptr); return 0; }
C++
// C++ program to illustrate sizes of // pointer of array #include <bits/stdc++.h> using namespace std; int main() { int arr[] = { 3, 5, 6, 7, 9 }; int *p = arr; int (*ptr)[5] = &arr; cout << "p = "<< p <<", ptr = " << ptr << endl; cout << "*p = "<< *p <<", *ptr = " << *ptr << endl; cout << "sizeof(p) = "<< sizeof(p) << ", sizeof(*p) = " << sizeof(*p) << endl; cout << "sizeof(ptr) = "<< sizeof(ptr) << ", sizeof(*ptr) = " << sizeof(*ptr) << endl; return 0; } // This code is contributed by shubhamsingh10
C
// C program to illustrate sizes of // pointer of array #include<stdio.h> int main() { int arr[] = { 3, 5, 6, 7, 9 }; int *p = arr; int (*ptr)[5] = &arr; printf("p = %p, ptr = %p\n", p, ptr); printf("*p = %d, *ptr = %p\n", *p, *ptr); printf("sizeof(p) = %lu, sizeof(*p) = %lu\n", sizeof(p), sizeof(*p)); printf("sizeof(ptr) = %lu, sizeof(*ptr) = %lu\n", sizeof(ptr), sizeof(*ptr)); return 0; }
C++
// C++ program to print the elements of 3-D // array using pointer notation #include <iostream> using namespace std; int main() { int arr[2][3][2] = { { {5, 10}, {6, 11}, {7, 12}, }, { {20, 30}, {21, 31}, {22, 32}, } }; int i, j, k; for (i = 0; i < 2; i++) { for (j = 0; j < 3; j++) { for (k = 0; k < 2; k++) cout << *(*(*(arr + i) + j) +k) << "\t"; cout <<"\n"; } } return 0; } // this code is contributed by shivanisinghss2110
C
// C program to print the elements of 3-D // array using pointer notation #include<stdio.h> int main() { int arr[2][3][2] = { { {5, 10}, {6, 11}, {7, 12}, }, { {20, 30}, {21, 31}, {22, 32}, } }; int i, j, k; for (i = 0; i < 2; i++) { for (j = 0; j < 3; j++) { for (k = 0; k < 2; k++) printf("%d\t", *(*(*(arr + i) + j) +k)); printf("\n"); } } return 0; }
C++
// C++ program to print elements of a 2-D array // by scripting a pointer to an array #include <iostream> using namespace std; int main() { int arr[3][4] = { {10, 11, 12, 13}, {20, 21, 22, 23}, {30, 31, 32, 33} }; int (*ptr)[4]; ptr = arr; cout << ptr<< " "<< ptr + 1<< " "<< ptr + 2 << endl; cout << *ptr<< " "<< *(ptr + 1)<< " "<< *(ptr + 2)<< endl; cout << **ptr<< " "<< *(*(ptr + 1) + 2)<< " "<< *(*(ptr + 2) + 3)<< endl; cout << ptr[0][0]<< " "<< ptr[1][2]<< " "<< ptr[2][3]<< endl; return 0; } // This code is contributed by shivanisinghss2110
C
// C program to print elements of a 2-D array // by scripting a pointer to an array #include<stdio.h> int main() { int arr[3][4] = { {10, 11, 12, 13}, {20, 21, 22, 23}, {30, 31, 32, 33} }; int (*ptr)[4]; ptr = arr; printf("%p %p %p\n", ptr, ptr + 1, ptr + 2); printf("%p %p %p\n", *ptr, *(ptr + 1), *(ptr + 2)); printf("%d %d %d\n", **ptr, *(*(ptr + 1) + 2), *(*(ptr + 2) + 3)); printf("%d %d %d\n", ptr[0][0], ptr[1][2], ptr[2][3]); return 0; }
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA