使用Visual Studio编写CUDA程序时提示Error(E0029):应输入表达式的解决方案

先说一下环境:

Visual Studio 2017+CUDA10.1

最近在学CUDA编程,有个程序老是提示这个错误:

使用Visual Studio编写CUDA程序时提示Error(E0029):应输入表达式的解决方案_第1张图片

搜索了很久,网上众说纷纭,有的说是驱动版本有问题,有的说是CUDA跟vs2017的兼容性不好等等,在用了各种解决方案之后都不行。最后才发现这个错误是error定位有问题,实际上是在kernel function调用的时候,里面出现了未定义的标识符,如下图所示:

使用Visual Studio编写CUDA程序时提示Error(E0029):应输入表达式的解决方案_第2张图片

只需要将里面的变量改正即可。

这类问题基本是编译器错误定位了kernel function中的“未定义标识符”这个error,所以遇到的时候看看函数调用和函数实现中有没有这类问题就好,不必纠结于是不是要重装CUDA/NVIDIA Drivers/vs。

 

你可能感兴趣的:(软件老中医,CUDA,Visual,Studio,E0029,应输入表达式)