#include <stdio.h>
int main(void){
int arr[3] = {0, 1, 2};
printf("배열의 이름 : %p \n", arr);
printf("첫 번째 요소 : %p \n", &arr[0]);
printf("두 번째 요소 : %p \n", &arr[1]);
printf("세 번째 요소 : %p \n", &arr[2]);
return 0;
}
- ArrayNamePointerOperation.c
#include <stdio.h>
int main(void){
int arr1[3] = {1, 2, 3};
double arr2[3] = {1.1, 2.2, 3.3};
printf("%d %g \n", *arr1, *arr2);
*arr1 += 100;
*arr2 += 120.5;
printf("%d %g \n", arr1[0], arr2[0]);
return 0;
}
#include <stdio.h>
int main(void){
int arr[3] = {15, 25, 35};
int * ptr = &arr[0];
printf("%d %d \n", ptr[0], arr[0]);
printf("%d %d \n", ptr[1], arr[1]);
printf("%d %d \n", ptr[2], arr[2]);
printf("%d %d \n", *ptr, *arr);
ptr[0] += 20;
printf("%d \n", ptr[0]);
printf("\n");
int num = 5;
int *ptr2 = #
printf("%d \n", num);
printf("%d !\n", *ptr2);
*ptr2 += 5;
printf("%d \n", num);
printf("%d !\n", *ptr2);
return 0;
}
#include <stdio.h>
int main(void){
int * ptr1 = 0x0010;
double * ptr2 = 0x0010;
printf("%p %p \n", ptr1+1, ptr1+2);
printf("%p %p \n", ptr2+1, ptr2+2);
printf("%p %p \n", ptr1, ptr2);
ptr1++;
ptr2++;
printf("%p %p \n", ptr1, ptr2);
return 0;
}
#include <stdio.h>
int main(void){
int arr[3] = {11, 22, 33};
int * ptr = arr;
printf("%d %d %d \n", *ptr, *(ptr+1), *(ptr+2));
printf("%d ", * ptr); ptr++;
printf("%d ", * ptr); ptr++;
printf("%d ", * ptr); ptr--;
printf("%d ", * ptr); ptr--;
printf("%d ", *ptr); printf("\n");
return 0;
}
#include <stdio.h>
int main(void){
char str1[] = "My String";
char * str2 = "Your String";
printf("%s %s \n", str1, str2);
str2 = "Our String";
printf("%s %s \n", str1, str2);
str1[0] = 'X';
str2[0] = 'X';
printf("%s %s \n", str1, str2);
return 0;
}
#include <stdio.h>
int main(void){
int num1 = 10, num2 = 20, num3 = 30;
int * arr[3] = {&num1, &num2, &num3};
printf("%d \n", *arr[0]);
printf("%d \n", *arr[1]);
printf("%d \n", *arr[2]);
return 0;
}