如何修复C++中的'cannot convert char to char*'错误?



我正在尝试使用指针逆转字符串,我想这是一个漂亮的标准程序。

我尝试使用单个指针进行此操作,与我看到的其他方法不同,人们在哪里使用两个指针进行开始和结束。

#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
void main()
{
 clrscr();
 char x[15];
 cout<<"enter word";
 gets(x);
 int l=strlen(x);
 char* p;
 p=x[15];
 for(int i=l-1;i>=0;i++)
 {
  p*=x[i];
  p--;
 }
 puts(x);
 getch();
}

我期望它可以正常工作,但它显示出一个错误,它不能将char*转换为char。我对指针非常陌生,但我认为指针只是记忆位置的别名,所以有什么问题?还是我错过了一些基本的东西?

将星号放在p之前放置。

*p=x[i];

另外,当您分配p = x[15]时,您正在删除x(使其成为char(并将其分配给p(这是char*(。

最新更新