裸字符串的数组等效项
Array Equivalent of Bare-String
我可以毫无问题地做到这一点:
const char* foo = "This is a bare-string";
我想要的是能够用数组做同样的事情:
const int* bar = {1, 2, 3};
显然该代码无法编译,但是是否存在某种与裸字符串等效的数组?
你不能这样做:
const int* bar = {1, 2, 3};
但是你可以这样做:
const int bar[] = {1, 2, 3};
原因是C(或C++)中的char*多了一个功能,除了可以作为char指针,还可以作为"C string",因此增加了初始化方法(char*专用) :
const char* foo = "This is bare-string";
最佳。
我可以毫无问题地做到这一点:
const char* foo = "This is a bare-string";
我想要的是能够用数组做同样的事情:
const int* bar = {1, 2, 3};
显然该代码无法编译,但是是否存在某种与裸字符串等效的数组?
你不能这样做:
const int* bar = {1, 2, 3};
但是你可以这样做:
const int bar[] = {1, 2, 3};
原因是C(或C++)中的char*多了一个功能,除了可以作为char指针,还可以作为"C string",因此增加了初始化方法(char*专用) :
const char* foo = "This is bare-string";
最佳。