C中的反转数组函数

时间:2018-02-23 04:40:34

标签: c

您好我正在尝试通过void函数打印反向数组但我的IDE却出现一个错误:expected expression before ']' token.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>  
void printReverses(char szName[], char szReversedName[]);

int main(void)
{

    char szName[21] = "Perry Scope";
    char szReversedName[21];
    char arrRev = printReverses(szName[], szReversedName[]);
    printf("Name in reverse %s \n", arrRev);
    return 0;
}

void printReverses(char szName[], char szReversedName[])
{
    int i, j, lenName;


    lenName=strlen(szName);
    for(i=0, j=lenName-1; i<lenName; i++, j--)
    {
        szReversedName[i] = szName[j];
    }
    szReversedName[i]=szName[lenName];  //add null termination
    return;
}

1 个答案:

答案 0 :(得分:0)

这是一种方法。试试这个

#include <stdio.h>

#include <stdlib.h>
#include <string.h>  
void printReverses(char szName[], char szReversedName[]);

int main(void)
{

  char szName[21] = "Perry Scope";
  char szReversedName[21];
  printReverses(szName, &szReversedName);
  printf("Name in reverse %s \n",szReversedName);
  return 0;
}

void printReverses(char szName[], char *szReversedName)
{
  int i, j, lenName;


lenName=strlen(szName);
for(i=0, j=lenName-1; i<lenName; i++, j--)
{
    szReversedName[i] = szName[j];
}
szReversedName[i]=szName[lenName];  //add null termination

}