我将字符串和字节数组转换为char数组。
char nameData[90];
char passData[90];
strcpy(nameData, name.toStdString().c_str()); //string
strcpy(passData, pass.data()); //bytearray
现在我需要获取nameData和passData的地址以将其设置为指针? 还是很容易将字符串和字节数组转换为char指针?
我需要将其转换为char指针以将其存储到文件中。
答案 0 :(得分:0)
我认为只使用类型转换就可以了。
例如char* pNameData = (char*) nameData
。实际上,您可以在C或C ++中将nameData直接用作char*
指针。
答案 1 :(得分:0)
我需要获取nameData的地址
一个char指针指向一个char。从严格意义上讲,它并不指向数组。
您的数组是char对象的数组。因此,我认为您实际上是说“我需要获取nameData的第一个字符的地址” 。
这很简单。数组可以隐式转换为指向数组第一个元素的指针。实际上,每当使用该值时,数组名称会衰减到此指针。因此,只需分配指针:
char* pointer = nameData;
我需要将其转换为char指针以将其存储到文件中。
您甚至可能不需要指针变量。只需将数组直接传递给带有字符指针参数的函数即可。