#include <iostream>
using namespace std;
int main()
{
char *string[10];
for(int i=0;i<10;i++)
cin>>string[i];
}
帮我看下这样的书写形式对吧?
具体讲下,为什么?
#include <iostream>
using namespace std;
int main()
{
char *string[10];
for(int i=0;i<10;i++)
cin>>string[i];
}
帮我看下这样的书写形式对吧?
具体讲下,为什么?
不对,定义仅是一个地址 没有指向的空间
例如你定义一个 int *p 你能给p赋值吗? 肯定不行的 首先要把p的指向弄清楚
这样写的话会有错误的,不知道你运行了没有?
定义的时候string前面不用*,我的理解你的意图似乎是想用字符指针来显示字符串。但是完全不用这样,当你定义string[10]的时候,string就已经是一个指针了,可以直接访问了
代码如下:
#include <iostream> using namespace std; int main() {
char string[10]; for(int i=0;i<10;i++) cin>>string[i]; cout<<string; }