用C语言写一个有关指针的代码
时间: 2023-12-29 10:45:47 浏览: 24
以下是一个简单的指针示例代码,它将交换两个整数变量的值:
```c
#include <stdio.h>
void swap(int *a, int *b);
int main() {
int num1 = 5, num2 = 10;
printf("Before swapping: num1 = %d, num2 = %d\n", num1, num2);
swap(&num1, &num2);
printf("After swapping: num1 = %d, num2 = %d\n", num1, num2);
return 0;
}
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
```
在上面的代码中,我们定义了一个 `swap` 函数,它接受两个指向整数的指针作为参数,然后使用指针交换它们所指向的值。在 `main` 函数中,我们定义了两个整数变量 `num1` 和 `num2`,然后调用 `swap` 函数,并把它们的地址传递给函数。最后,我们输出交换后的结果。
相关问题
用c语言写一个数组指针的代码示例
以下是一个C语言的数组指针的代码示例:
```c
#include <stdio.h>
int main() {
int numbers[] = {1, 2, 3, 4, 5};
int *ptr = numbers;
printf("The first element of numbers is %d\n", *ptr);
printf("The third element of numbers is %d\n", *(ptr + 2));
}
```
在这个例子中,我们定义了一个包含5个整数元素的数组numbers,然后我们定义了一个指向该数组的整型指针ptr。我们可以使用指针ptr来获取数组中每个元素的值。使用指针访问数组中的元素的方法是,使用"*"运算符和指针偏移量来访问数组的元素。例如,*(ptr + 2)将返回数组numbers的第三个元素,即3。
请用c语言指针写一个数字排序代码
以下是使用指针排序数字的示例代码:
```c
#include <stdio.h>
void sort(int *arr, int size) {
int i, j, temp;
for (i = 0; i < size; i++) {
for (j = i + 1; j < size; j++) {
if (*(arr + j) < *(arr + i)) {
temp = *(arr + i);
*(arr + i) = *(arr + j);
*(arr + j) = temp;
}
}
}
}
int main() {
int i, size, arr[100];
printf("Enter the size of array: ");
scanf("%d", &size);
printf("Enter the elements of array:\n");
for (i = 0; i < size; i++) {
scanf("%d", arr + i);
}
sort(arr, size);
printf("Sorted array is:\n");
for (i = 0; i < size; i++) {
printf("%d ", *(arr + i));
}
printf("\n");
return 0;
}
```
此代码使用了指针来访问数组元素,通过比较指针所指向的值来实现排序。