char * 字符串丢失

cudaMemcpy 函数拷贝 char* matri 到cuda 上的char * dev_matri
global void charf1(char * dev_matri)
{
int tid = blockIdx.x * blockDim.x + threadIdx.x;
printf("%s ",dev_matri +tid ); // 每行字符串丢失前面一部分
}

LZ您好,您在“printf("%s ",dev_matri +tid );”对指针dev_matri添加了线程编号的偏移量,所以在每个线程打印的时候,将不是从dev_matri的首地址开始打印,所以会丢失最前面的字符。

祝您编码顺利~

not my answer ,thank you anyway

如您需要进一步讨论,请提供更为详细的代码信息和输出结果信息。

祝您好运~