- 直接初始化:
- 方式:在声明指针时直接赋予其一个内存地址值。
- 示例 - 函数参数传递:
#include <stdio.h>
void printValue(int *ptr) {
printf("The value is: %d\n", *ptr);
}
int main() {
int num = 10;
int *ptr = #
printValue(ptr);
return 0;
}
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int *ptr = arr;
for (int i = 0; i < 5; i++) {
printf("%d ", *(ptr + i));
}
return 0;
}
- 间接初始化:
- 方式:先声明指针,然后再为其赋值。
- 示例 - 函数参数传递:
#include <stdio.h>
void updateValue(int *ptr, int newVal) {
*ptr = newVal;
}
int main() {
int num;
int *ptr;
num = 5;
ptr = #
updateValue(ptr, 15);
printf("The updated value is: %d\n", num);
return 0;
}
#include <stdio.h>
int main() {
int arr[] = {10, 20, 30, 40, 50};
int *ptr;
ptr = arr;
for (int i = 0; i < 5; i++) {
printf("%d ", *(ptr + i));
}
return 0;
}