Tag: 循环

我怎样才能使用嵌套for循环加起来两个2d(pitched)数组?

我是新来的cuda。 我想把两个2d数组加到第三个数组中。 我使用以下代码: cudaMallocPitch((void**)&device_a, &pitch, 2*sizeof(int),2); cudaMallocPitch((void**)&device_b, &pitch, 2*sizeof(int),2); cudaMallocPitch((void**)&device_c, &pitch, 2*sizeof(int),2); 现在我的问题是,我不想要使用这些数组作为扁平二维数组所有在我的内核代码我想迪是使用两个循环&把结果放在第三个数组像 __global__ void add(int *dev_a ,int *dev_b,int* dec_c) { for i=0;i<2;i++) { for j=0;j<2;j++) { dev_c[i][j]=dev_a[i][j]+dev_b[i][j]; } } } 我如何在CUDA中做到这一点? 请告诉我如何以这种方式使用二维数组? 内核调用2d数组应该是什么? 如果可能,请使用代码示例进行说明。

如何在C ++循环中生成不同的随机数字?

是否有可能产生不同的随机数,每次循环运行。 例如,我有: for (int t=0;t<10;t++) { int random_x; srand ( time(NULL) ); random_x = rand() % 100; cout<<"\nRandom X = "<<random_x; } 但问题是,它每次都会产生相同的随机数。 每次循环运行时是否可以生成不同的随机数字? 有没有可能重置随机数初始化?

JavaScript不支持使用局部variables的闭包?

这个代码我很困惑: var closures = []; function create() { for (var i = 0; i < 5; i++) { closures[i] = function() { alert("i = " + i); }; } } function run() { for (var i = 0; i < 5; i++) { closures[i](); } } create(); run(); 从我的理解应该打印0,1,2,3,4(这不是封闭的概念?)。 相反,它打印5,5,5,5,5。 我试过Rhino和Firefox。 有人可以向我解释这种行为吗? Thx提前。

如何摆脱每个循环的jQuery

我如何摆脱jQuery each循环? 我努力了: return false; 在循环中,但这没有奏效。 有任何想法吗?

在一个螺旋循环

一个朋友需要一个algorithm,让他循环一个NxMmatrix的元素(N和M是奇数)。 我提出了一个解决scheme,但我想看看我的同事是否可以提出一个更好的解决scheme。 我发布我的解决scheme作为这个问题的答案。 输出示例: 对于3x3matrix,输出应该是: (1,0)(1,0)(1,1)(0,1)(-1,1)(-1,0)(-1,-1)(0,-1)(1,-1 ) 此外,该algorithm应该支持非平方matrix,例如对于一个5x3matrix,输出应该是: (1,0)(1,0)(1,1)(0,1)(-1,1)(-1,0)(-1,-1)(0,-1)(1,-1 )(2,-1)(2,0)(2,1)(-2,1)(-2,0)(-2,-1)

做{…} while(0) – 有什么好处?

可能重复: 为什么在C / C ++macros中有没有意义的do / while和if / else语句? 我已经看了十多年了。 我一直在想什么是好的。 因为我主要在#defines中看到它,所以我认为它适合于内部作用域variables声明和使用中断(而不是gotos)。 对其他东西有好处吗? 你用它吗?

从Javascriptclosures循环访问外部variables

看到: for (var i in this.items) { var item = this.items[i]; $("#showcasenav").append("<li id=\"showcasebutton_"+item.id+"\"><img src=\"http://img.dovov.comshowcase/icon-"+item.id+".png\" /></li>"); $("#showcasebutton_"+item.id).click(function() { alert(item.id); self.switchto(item.id); }); } 问题在于,惊动item.id始终是数组中最后一个项目的标识(this.items)。 如何解决?

如何迭代JavaScript对象?

我在JavaScript中有一个对象: { abc: '…', bca: '…', zzz: '…', xxx: '…', ccc: '…', // … } 我想用for循环来获得它的属性。 我想迭代它的一部分(不是所有的对象属性一次)。 用一个简单的数组,我可以用循环的标准来做到这一点: for (i = 0; i < 100; i++) { … } // first part for (i = 100; i < 300; i++) { … } // second for (i = 300; i < arr.length; i++) { … […]

在C#中迭代字典的最佳方法是什么?

我已经看到了几种不同的方式来遍历C#中的字典。 有没有标准的方法?

Javascript循环中的事件处理程序 – 需要closures?

我正在处理一些我从其他人手中接过的html和Javascript代码。 该页面每十秒钟重新载入一个数据表(通过asynchronous请求),然后使用一些DOM代码重新构build表。 有问题的代码看起来像这样: var blah = xmlres.getElementsByTagName('blah'); for(var i = 0; i < blah.length; i++) { var td = document.createElement('td'); var select = document.createElement('select'); select.setAttribute("…", "…"); select.onchange = function() { onStatusChanged(select, callid, anotherid); }; td.appendChild(select); } 但是,如果为<select>元素触发onchange事件,则表中的每个<select>都会将相同的值传递给onStatusChanged()方法(我已经validation了在循环的每次迭代中, callid和anotherid正在被赋予新的,不同的值)。 我怀疑这是发生,因为我设置事件处理程序的性质,使用select.onchange = function()语法。 如果我理解这是如何工作的,那么这个语法将onchange事件的闭包设置为一个引用这两个引用的函数,这个引用最终具有在循环的最后一次迭代中设置的最终值。 当事件触发时, callid和anotherid引用的值是最后一次迭代中设置的值,而不是单个迭代中设置的值。 有没有办法,我可以复制我传递给onStatusChanged()参数的值? 我已经改变了标题,以更好地反映问题和接受的答案。