我遇到以下代码问题。
int main(){
char* cptr = new char[100];
*cptr[1] = 'A';
}
在Visual C ++ 2010中编译时,它给出了错误: “*'的操作数必须是指针”。 但是cptr是指针。
答案 0 :(得分:6)
是的,但cptr[1]
不是 - 它是char
。这就是您要应用*
的内容。
*cptr[1] ==
* (cptr[1])
|
this is a char
你可以写
char cptr[] = "A";
或使用std::string
。
答案 1 :(得分:0)
int main(){
char* cptr = new char[100];
cptr[1] = 'A';
}
这是实施它的正确方式。