gpt4 book ai didi

c - 用指针反转字符串?

转载 作者:太空宇宙 更新时间:2023-11-04 06:00:25 27 4
gpt4 key购买 nike

<分区>

我试图用一个函数和一些指针来反转一个字符串,但我无法获得更新原始字符串的函数。

#include <stdio.h>
#include <string.h>


void rev(char* string)
{
char str2[strlen(string)];
char *p1;
char *p2;

p1 = string + strlen(string)-1;
p2 = str2;

while(p1 >= string)
*p2++ = *p1--;

*p2 = '\0';
p2 = p2 - strlen(string);

string = p2; // This codesn't seem to update s1 or s2

}

int main(void)
{
char s1[100] = "What does the fox say?";
char s2[100] = "Titanic sinks";

rev(s1);
rev(s2);

printf("\n\n%s\n", s1);
printf("%s\n", s2);

return 0;
}

该功能有效,但我无法让 main 中的字符串更新为反转的字符串。 Imo string = p2 应该将字符串更新为它的反转值。确实如此,但仅在函数内,而不是在主函数中...

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com