C语言利用指针完成字符交换
时间: 2023-07-20 16:32:17 浏览: 100
可以使用指针实现两个字符的交换,具体实现如下:
```c
void swap(char *a, char *b) {
char temp = *a;
*a = *b;
*b = temp;
}
```
其中,`a`和`b`是两个字符型指针,`*a`和`*b`分别表示`a`和`b`所指向的字符。在`swap`函数中,首先将指针`a`所指向的字符保存在临时变量`temp`中,然后将指针`a`所指向的字符赋值为指针`b`所指向的字符,最后将指针`b`所指向的字符赋值为临时变量`temp`,完成了两个字符的交换。
相关问题
c语言使用指针实现字符串反转
下面是使用指针实现字符串反转的C语言代码:
```c
#include <stdio.h>
#include <string.h>
void reverseString(char* str) {
int len = strlen(str);
char* start = str;
char* end = str + len - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
char str[] = "hello world";
reverseString(str);
printf("%s\n", str); // 输出 "dlrow olleh"
return 0;
}
```
在函数`reverseString()`中,我们首先获取字符串的长度。然后,我们使用两个指针`start`和`end`来分别指向字符串的开头和结尾。接下来,我们使用一个`while`循环来交换`start`和`end`所指向的字符,直到它们相遇为止。最终,字符串就被反转了。
c语言用指针实现字符串颠倒
以下是C语言用指针实现字符串颠倒的代码示例:
```c
#include <stdio.h>
#include <string.h>
void reverse(char *str) {
char *start = str;
char *end = str + strlen(str) - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
char str[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("Original string: %s\n", str);
reverse(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
运行结果为:
```
Original string: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Reversed string: ZYXWVUTSRQPONMLKJIHGFEDCBA
```
该代码中,我们定义了一个`reverse`函数,该函数接受一个指向字符串的指针作为参数。在函数内部,我们使用两个指针`start`和`end`分别指向字符串的开头和结尾,然后交换它们所指向的字符,直到`start`指针超过了`end`指针。最后,我们在`main`函数中调用`reverse`函数,并输出结果。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044937.png)
![-](https://img-home.csdnimg.cn/images/20241231044937.png)
![-](https://img-home.csdnimg.cn/images/20241231044937.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)