我有一个很奇怪的错误。我正在Cuda编写一个模拟康威生命游戏的程序。我将二维数组转换为设备,并且有一个if-case来检查状态的线程。NVIDIA Cuda if语句
if(iam==-1)
{ //i am on
iam=0;
}
else if(iam==1)
{ //i am dying
iam=-1;
}
else //i am off
{
if(counter_alive==2)//two neighboors alive
{
iam=1; //i will be on
}
// iam = -999;
}
当注释的最后一行没有任何作用,var“iam”有第一个值。但是,如果我放弃//,它将起作用。当然,如果流的代码执行else,那么var“iam”将取值-999。 任何想法?我错过了什么? 在此先感谢!
@talonmies:你怎么知道这个问题与C或C++无关?就目前而言,我宁愿怀疑它的确存在,但根本不可能与CUDA有任何关系。 :) – tera
@tera:因为它只是标签垃圾邮件,这就是为什么。而且我宁愿只是悄悄地去掉标签,而不是让通常的C或C++愤怒的巨魔之一过来并将其移除并同时启动火焰战争 – talonmies
好的。请注意,无论如何,这都是嘟嘟tong tong的。 @fikos:您确实需要提供[最小,完整和可验证示例](http://stackoverflow.com/help/mcve)。 – tera