c语言函数形参为指针例题
时间: 2024-12-29 22:14:03 浏览: 11
### C语言函数形参指针示例
当函数接受指针作为形参时,可以实现对原始数据的修改。下面展示了一个简单的例子来说明如何使用指针作为函数参数。
#### 修改整数值的例子
```c
#include <stdio.h>
void changeValue(int *ptr) {
(*ptr)++;
}
int main() {
int value = 1;
printf("Before function call: %d\n", value);
changeValue(&value);
printf("After function call: %d\n", value);
}
```
这段代码展示了通过传递地址给`changeValue()`函数并利用解引用操作符改变外部变量的内容[^2]。
#### 使用字符数组的情况
另一个常见场景是在处理字符串或字符数组的时候:
```c
#include <stdio.h>
#define SIZE 50
void copyString(char *destination, const char *source) {
while ((*destination++ = *source++) != '\0');
}
int main() {
char source[] = "Hello";
char destination[SIZE];
copyString(destination, source);
puts(destination);
}
```
这里定义了两个字符串——源串和目标串,并通过指针复制内容到新的位置而不必逐字赋值[^4]。
#### 结构体指针的应用实例
对于更复杂的数据结构如结构体来说,也可以采用类似的机制提高效率:
```c
typedef struct Student {
char name[30];
float score;
} STUDENT;
void updateScore(STUDENT *stuPtr, float newScore){
stuPtr->score = newScore;
}
int main(){
STUDENT student={"Tom",90};
updateScore(&student ,85);
printf("%s's updated score is %.2f.",student.name,student.score);
}
```
此片段中创建了一个名为STUDENT的新类型用于表示学生信息;接着编写了一个更新分数的方法接收指向该类型的指针完成相应工作[^3]。
阅读全文