如何在C中从静态变量声明常量变量?
我想从这个静态变量中得到一个常量变量如何在C中从静态变量声明常量变量?,c,arrays,C,Arrays,我想从这个静态变量中得到一个常量变量 #define video_mode_count 12 static freenect_frame_mode supported_video_modes[video_mode_count] = { // reserved, resolution, format, bytes, width, height, data_bits_per_pixel, padding_bits_per_pixel, framerate, is_valid {MAK
#define video_mode_count 12
static freenect_frame_mode supported_video_modes[video_mode_count] = {
// reserved, resolution, format, bytes, width, height, data_bits_per_pixel, padding_bits_per_pixel, framerate, is_valid
{MAKE_RESERVED(FREENECT_RESOLUTION_HIGH, FREENECT_VIDEO_RGB), FREENECT_RESOLUTION_HIGH, {FREENECT_VIDEO_RGB}, 1280*1024*3, 1280, 1024, 24, 0, 10, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_RGB), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_RGB}, 640*480*3, 640, 480, 24, 0, 30, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_HIGH, FREENECT_VIDEO_BAYER), FREENECT_RESOLUTION_HIGH, {FREENECT_VIDEO_BAYER}, 1280*1024, 1280, 1024, 8, 0, 10, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_BAYER), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_BAYER}, 640*480, 640, 480, 8, 0, 30, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_HIGH, FREENECT_VIDEO_IR_8BIT), FREENECT_RESOLUTION_HIGH, {FREENECT_VIDEO_IR_8BIT}, 1280*1024, 1280, 1024, 8, 0, 10, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_IR_8BIT), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_IR_8BIT}, 640*488, 640, 488, 8, 0, 30, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_HIGH, FREENECT_VIDEO_IR_10BIT), FREENECT_RESOLUTION_HIGH, {FREENECT_VIDEO_IR_10BIT}, 1280*1024*2, 1280, 1024, 10, 6, 10, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_IR_10BIT), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_IR_10BIT}, 640*488*2, 640, 488, 10, 6, 30, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_HIGH, FREENECT_VIDEO_IR_10BIT_PACKED), FREENECT_RESOLUTION_HIGH, {FREENECT_VIDEO_IR_10BIT_PACKED}, 1280*1024*10/8, 1280, 1024, 10, 0, 10, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_IR_10BIT_PACKED), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_IR_10BIT_PACKED}, 640*488*10/8, 640, 488, 10, 0, 30, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_YUV_RGB), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_YUV_RGB}, 640*480*3, 640, 480, 24, 0, 15, 1 },
{MAKE_RESERVED(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_YUV_RAW), FREENECT_RESOLUTION_MEDIUM, {FREENECT_VIDEO_YUV_RAW}, 640*480*2, 640, 480, 16, 0, 15, 1 },};
现在我需要写点东西
const FREENECT_VIDEO_RGB = [ An instance in the type of freenect_frame_mode ]
如何以这种格式声明常量变量
原始代码来自: 我需要传递一个const var freenect_frame_模式到这个模式中,看看它是否返回-1:
int freenect\u set\u video\u模式(freenect\u device*dev,const freenect\u frame\u模式)
{
freenect_context*ctx=dev->parent;
如果(开发->视频运行){
FN_错误(“试图在流处于活动状态时设置视频模式\n”);
返回-1;
}
//验证传入的模式是否实际在支持的模式列表中
int=0;
int i;
对于(i=0;i
}
我现在只是一直在使用这个功能
谢谢 如果您想获取数组的元素,可以使用标准语法
array[index]
const freenect_frame_mode FREENECT_VIDEO_RGB = supported_video_modes[5];
比如说
如果您想了解更多信息,需要显示更多代码,即这些符号的定义。如果您想获取数组的元素,可以使用标准语法
array[index]
const freenect_frame_mode FREENECT_VIDEO_RGB = supported_video_modes[5];
比如说
如果您想了解更多信息,需要显示更多代码,即这些符号的定义。如果您想获取数组的元素,可以使用标准语法
array[index]
const freenect_frame_mode FREENECT_VIDEO_RGB = supported_video_modes[5];
比如说
如果您想了解更多信息,需要显示更多代码,即这些符号的定义。如果您想获取数组的元素,可以使用标准语法
array[index]
const freenect_frame_mode FREENECT_VIDEO_RGB = supported_video_modes[5];
比如说
如果需要更多信息,您需要显示更多代码,即这些符号的定义。文章已重新编辑。我使用上面报告的代码:
src/input/Freenect.cc:88:27:error:“const Freenect_frame_mode Freenect_VIDEO_RGB”重新声明为不同类型的符号const Freenect_frame_mode Freenect_VIDEO_RGB=支持的_VIDEO_mode[5]代码>好。我已经解决了这个问题。我在这里得到的错误是因为var FREENECT_VIDEO_RGB声明了两次。我重新命名了var名称,它可以工作了!谢谢你,克里斯·贝克!这篇文章被重新编辑。我使用上面报告的代码:src/input/Freenect.cc:88:27:error:“const Freenect_frame_mode Freenect_VIDEO_RGB”重新声明为不同类型的符号const Freenect_frame_mode Freenect_VIDEO_RGB=支持的_VIDEO_mode[5]代码>好。我已经解决了这个问题。我在这里得到的错误是因为var FREENECT_VIDEO_RGB声明了两次。我重新命名了var名称,它可以工作了!谢谢你,克里斯·贝克!这篇文章被重新编辑。我使用上面报告的代码:src/input/Freenect.cc:88:27:error:“const Freenect_frame_mode Freenect_VIDEO_RGB”重新声明为不同类型的符号const Freenect_frame_mode Freenect_VIDEO_RGB=支持的_VIDEO_mode[5]代码>好。我已经解决了这个问题。我在这里得到的错误是因为var FREENECT_VIDEO_RGB声明了两次。我重新命名了var名称,它可以工作了!谢谢你,克里斯·贝克!这篇文章被重新编辑。我使用上面报告的代码:src/input/Freenect.cc:88:27:error:“const Freenect_frame_mode Freenect_VIDEO_RGB”重新声明为不同类型的符号const Freenect_frame_mode Freenect_VIDEO_RGB=支持的_VIDEO_mode[5]代码>好。我已经解决了这个问题。我在这里得到的错误是因为var FREENECT_VIDEO_RGB声明了两次。我重新命名了var名称,它可以工作了!谢谢你,克里斯·贝克!常量变量绝对不是变量……)那么const static…
??常量变量绝对不是变量…)那么const static…
??常量变量绝对不是变量…)那么const static…
??常量变量绝对不是变量…)那么常量静态…
呢???