在C语言中,可以使用指针和循环来反序输出字符串。以下是一个示例代码:
#include <stdio.h>
#include <string.h>
void reverse_print(char *str) {
if (str == NULL) {
return;
}
char *end = str + strlen(str) - 1;
char temp;
while (end >= str) {
temp = *end;
*end = *str;
*str = temp;
str++;
end--;
}
}
int main() {
char str[] = "Hello, World!";
reverse_print(str);
printf("\n");
return 0;
}
在这个示例中,我们定义了一个名为reverse_print
的函数,该函数接受一个字符串指针作为参数。我们首先计算字符串的长度,并将指针指向最后一个字符。然后我们使用两个指针str
和end
分别指向字符串的开头和结尾。在循环中,我们交换这两个指针所指向的字符,然后将str
指针向前移动一位,将end
指针向后移动一位。当str
和end
指针相遇或者交叉时,循环结束。