Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何初始化无符号字符数组?_C_Multidimensional Array - Fatal编程技术网

C 如何初始化无符号字符数组?

C 如何初始化无符号字符数组?,c,multidimensional-array,C,Multidimensional Array,我真正想要实现的是一个动态字节模式数组,当我缓冲二进制文件时,我可以将其用作模式搜索器。但我现在从基础开始。下面的代码是基于StackOverflow上的一个示例编写的 我使用mingw32 for Windows编译它 D:\> gcc example.c -o example.exe 当我尝试编译时,会收到以下警告 example.c: In function 'main': example.c:6:3: warning: initialization makes pointer

我真正想要实现的是一个动态字节模式数组,当我缓冲二进制文件时,我可以将其用作模式搜索器。但我现在从基础开始。下面的代码是基于StackOverflow上的一个示例编写的

我使用mingw32 for Windows编译它

D:\> gcc example.c -o example.exe
当我尝试编译时,会收到以下警告

example.c: In function 'main':
example.c:6:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:6:3: warning: (near initialization for 'p[0][0]') [enabled by default]
example.c:6:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:6:3: warning: (near initialization for 'p[0][1]') [enabled by default]
example.c:6:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:6:3: warning: (near initialization for 'p[0][2]') [enabled by default]
example.c:6:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:6:3: warning: (near initialization for 'p[0][3]') [enabled by default]
example.c:7:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:7:3: warning: (near initialization for 'p[1][0]') [enabled by default]
example.c:7:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:7:3: warning: (near initialization for 'p[1][1]') [enabled by default]
example.c:7:3: warning: initialization makes pointer from integer without a cast [enabled by default]
example.c:7:3: warning: (near initialization for 'p[1][2]') [enabled by default]

我不明白这个警告的性质。我如何着手解决它?谢谢。

字节*p[2][4]
中删除
*

BYTE p[2][4] = {
    {0x44,0x58,0x54,0x31},
    {0x44,0x58,0x54,0x00}
};

您需要的是
字符的多维数组
字节p[2][4]
而不是指向字符的
指针的多维数组。这是一个很容易解决的问题。我很好奇。当我链接的示例使用一个指针来表示与我正在查找的内容非常相似的内容时,为什么要删除指针?@redsolar在该代码中,最内部的元素本身就是一个数组(
“00”
)。噢。我现在明白了。谢谢你澄清这一点,谢谢你的回答。非常感谢。
BYTE p[2][4] = {
    {0x44,0x58,0x54,0x31},
    {0x44,0x58,0x54,0x00}
};