C语言中的硬编码字节数组
我正在调试一个网络应用程序 为了让应用程序工作,我必须模拟一些交换的数据。在C++中,你可以做一些类似于< /P>的事情。C语言中的硬编码字节数组,c,arrays,syntax,C,Arrays,Syntax,我正在调试一个网络应用程序 为了让应用程序工作,我必须模拟一些交换的数据。在C++中,你可以做一些类似于< /P>的事情。 char* myArray = { 0x00, 0x11, 0x22 }; 然而,我似乎找不到这种语法的C等价物 基本上,我只想用硬编码的值填充数组。在C中也可以这样做,但应该将其声明为char[],而不是char*,这样就可以通过sizeof操作符获得其大小: char myArray[] = { 0x00, 0x11, 0x22 }; size_t myArraySi
char* myArray = { 0x00, 0x11, 0x22 };
然而,我似乎找不到这种语法的C等价物
基本上,我只想用硬编码的值填充数组。在C中也可以这样做,但应该将其声明为
char[]
,而不是char*
,这样就可以通过sizeof
操作符获得其大小:
char myArray[] = { 0x00, 0x11, 0x22 };
size_t myArraySize = sizeof(myArray); // myArraySize = 3
没有
char myArray[] = {0x00, 0x01,0x02};
工作?尝试:
char myArray[] = { 0x00, 0x11, 0x22 };
- char myArray[]={0x00,0x11,0x22}
char *myArray = (char []) {0x00, 0x11, 0x22 };
如果源代码与C++兼容是一个要求,最好不要使用这个构造,因为它是-AFAIK——不是C++ C++的一部分。