对于volatile的使用,如果在串行程序中如果不考虑优化问题是比较少遇到的。但是在CUDA中,volatile经常遇到。作用就是不让编辑器自动进行变量的优化,而是强制取最新赋给的值。
extern ”C“ 的作用是指示编译器这部分代码按照C语言进行编译,而不是C++。这就解释有些定义在.h文件的函数,在.c文件里可能就不认的问题。
参考内容:
http://troore.blog.ustc.edu.cn/?p=188
http://www.cnblogs.com/1024incn/p/4564726.html