本帖最后由 hzocce 于 2015-12-9 21:42 编辑
项目中碰到问题,比较字符和字符串数组。。需要群里的大神指点:
打个比方,如下说明:
char TX[20]; //申明一个数组用于存放串口接收到的字符串。
TX[]={'B','e','i','j','i','n','g'}; //左边为接串口实际收到的字符串
char x=10;
chay y=20;
char *StringTable[x][y]={
{"China","USA",Italy","India","Korea","Malaysia",Singapore"},
{"Tianjing","chongqing","qingdao","beijing","shenyang"},
{"dongcheng",xicheng","chaoyang","fengtai","haidian"}
}
我目前就是要对比TX[]={'B','e','i','j','i','n','g'}中的字符是否和二维数组中的某个元素是否一致。
因为一个是字符,一个为字符串,这个如何对比?
我个人认为有2个思路:
1.将TX[]={'B','e','i','j','i','n','g'}变成字符串 “Beijng” 再使用strcmp函数来对比。
可问题又来了,怎么将这个字符变成字符串? 申明的是20个元素的数组,可是只使用了bejing 这几个字符,仅占20个中的一部分。
2.自己写一个对比函数,Compare(char TbaleA,char TableB),可是这个对比函数又怎么写呢? |