cuda编程
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#include <malloc.h>
#include <cuda.h>
#include <curand.h>
#include <cuda_runtime.h>
int main()
{
int *h_a,*h_a1,*d_a;
h_a = (int *)malloc(sizeof(int));
h_a1 = (int *)malloc(sizeof(int));
CUDA_CALL(cudaMalloc((void **)&d_a,sizeof(int)));
h_a[0]=5;
cudaMemcpy(d_a, h_a,sizeof(int),cudaMemcpyHostToDevice);
cudaMemcpy(h_a1, d_a,sizeof(int),cudaMemcpyDeviceToHost);
printf("%d\n",h_a1[0]);
return 0;
}
想问一下,为什么输出结果为0,而不是5?求大神解答