strcpy((*pointeur).caractere, x);
我使用 strcpy
将 x
的值复制到 (*pointeur).caractere
并定义结构
typedef struct cle{
char caractere;
int compteur;
struct cle *suivant;
}cle_t;
并声明指针
cle_t *pointeur;
但是编译器告诉我
"invalid conversion from 'char' to 'char*'"
和
"initializing argument 1 of `char* strcpy(char*, const char*)' "
我不明白出了什么问题...... 谢谢大家~
最佳答案
敬礼!
caractere
是一个字符,strcpy
适用于字符串。根据您想要执行的操作,有两种解决方案(使用您的标识符,我猜您属于第一种情况)。
- 如果
x
是char
,则使用pointeur->caractere = x
(不需要strcpy
来复制字符)。 - 如果
x
是char*
或char[]
,则将caractere
声明为带有足够的长度(即动态分配的char
数组或指向char
的指针),然后您可以调用strcpy
。
关于谁能帮我解决这个结构/指针问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13323503/