C51语言类型转换问题
```c
typedef struct {
char fingerprint_id[MAX_USERS]; // ʹÓÃ×Ö·ûÊý×éÀ´´æ´¢Ö¸ÎÆID
char user_id[MAX_USERS]; // ʹÓÃ×Ö·ûÊý×éÀ´´æ´¢Óû§ID
} FingerprintMap;
// ¶¨ÒåÓ³Éä±í
FingerprintMap fingerprint_map[] = {
{"0", "management"},
{"1", "baiyang"},
{"2", "zhaoguoting"},
// Ìí¼Ó¸ü¶àµÄÖ¸ÎÆIDºÍÓû§Ãû
};
程序如上所示,
```c
if (user_id_found)
{ // Èç¹ûÕÒµ½ÁËÆ¥ÅäµÄÓû§ID
sprintf(str, "User ID: %s", user_id); // ¸ñʽ»¯×Ö·û´®£¬ÏÔʾÓû§ID
strncpy(str_ID, str, sizeof(str_ID));
return str_ID ;
}
返回这个str_ID 转换为字符串失败,但是函数不能修改为指针型号,使用
strncpy(str_ID, str, sizeof(str_ID));也不行