小编4m4*_*3u5的帖子

将char数组分配给指针

我正在尝试理解C ++中的指针,但目前对以下内容感到困惑:

char input_line[] = "hi?";
char* p;
p = &input_line;

while (*p)
{       
    cout << *p << endl;
    *p++;
}
Run Code Online (Sandbox Code Playgroud)

我必须在这里混淆,因为我认为这表示分配的地址一维数组指针 ; 但是,当我尝试编译它时,出现错误: error: cannot convert char (*)[4]' to 'char*' in assignment p = &input_line;

看来我应该这样做:

const char input[] = "test?";
int quest_count = 0;
const char *i = input;

while(*i){
    cout << *i << endl;
    *i++;
}   
Run Code Online (Sandbox Code Playgroud)

这对我来说没有任何意义,因为您正在为存储地址的指针分配一个char 数组char

c++ arrays pointers char

2
推荐指数
1
解决办法
2032
查看次数

标签 统计

arrays ×1

c++ ×1

char ×1

pointers ×1