小编use*_*026的帖子

什么是"abc"和C中的{"abc"}之间的区别?

在C中(我想这也适用于C++),有什么区别

char str[4] = "abc";
char *cstr = {"abc"};
Run Code Online (Sandbox Code Playgroud)

当我尝试将"abc"传递给接受char**的函数时出现问题

void f(char** s)
{
  fprintf(stderr, "%s", *s);
}
Run Code Online (Sandbox Code Playgroud)

执行以下操作会产生编译器错误.如果转换为char**(使编译器满意)程序seg错误.

f(&str);
Run Code Online (Sandbox Code Playgroud)

但是以下工作正常

f(&cstr[0]);
Run Code Online (Sandbox Code Playgroud)

c++ string pointers

4
推荐指数
1
解决办法
591
查看次数

标签 统计

c++ ×1

pointers ×1

string ×1