我正在尝试将文件(OpenCL内核)嵌入为char数组
主要问题是它给了我包含#
示例:
char mykernel[] =
"stuff ---"
"#if(1)"
" stuff"
"#else"
" another stuff"
"#define ASD 15";
void* clh = clsopen(cp,mykernel,CLLD_NOW);
所有这些都给我带来了错误(编译器错误就好像它看不到它们一样)
编辑:分号在发布问题时出错。
错误就像:
#define ASD 15
在整个代码中使用此ASD,获取未声明标识符
等错误使用#if
#else
使用#if
中的某个功能以及#else
获取错误,比如函数声明了2次,名称相同......等等
EDIT2:
"#if(1)" //char number 26123: error: note: previous definition is here
" inline functionA ...with output A"
"#else" //char number 28700: error: redefinition of functionA
" inline functionA ...with output B"
答案 0 :(得分:1)
以#
开头的所有行也是没有任何前导空格的行。问题是在自然源文件中,每一行都以\n
结束,编译器将其视为空格。将\n
添加到每行的末尾。