Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C反转不工作的字符串_C_String_Reverse - Fatal编程技术网

C反转不工作的字符串

C反转不工作的字符串,c,string,reverse,C,String,Reverse,有人能检查一下这个代码,看看它是否有效吗 它应该反转输入的字符串(例如,“hello”应该变成“olleh”) void stringReverse(char string1[]) { int长度,i,j,k; char-tmp; 长度=strlen(string1); j=长度-1; printf(“长度:%i”,长度); 对于(i=0;i

有人能检查一下这个代码,看看它是否有效吗

它应该反转输入的字符串(例如,“hello”应该变成“olleh”)

void stringReverse(char string1[])
{
int长度,i,j,k;
char-tmp;
长度=strlen(string1);
j=长度-1;
printf(“长度:%i”,长度);
对于(i=0;i
它完全按照您告诉它的方式工作。您的周期必须达到
length/2
,而不是
length

char*strev(char*s){
char* strrev(char* s)  {  
  char* h = s;    
  char* t = s; 
  char ch;  `
  while(*t++){};  
  t -= 2; 
  while(h < t){  
    ch = *h;  
    *h++ = *t;    /* h向尾部移动 */  
    *t-- = ch;    /* t向头部移动 */  
  }
  return(s);
}
char*h=s; char*t=s; char ch` 而(*t++){}; t-=2; 而(h
功能:
strev
。这就是执行


希望这能对您有所帮助。

查看此代码并检查它是否正常运行
-您尝试过运行它吗?你的标题意味着你做了,但它不起作用,你得到了什么结果?您是否使用调试器单步执行代码?它正在反转字符串,您只是将其反转回来。
i
-->
i
reverse and repeat=nothing。
char* strrev(char* s)  {  
  char* h = s;    
  char* t = s; 
  char ch;  `
  while(*t++){};  
  t -= 2; 
  while(h < t){  
    ch = *h;  
    *h++ = *t;    /* h向尾部移动 */  
    *t-- = ch;    /* t向头部移动 */  
  }
  return(s);
}