赞同2楼3楼朋友的说法,开发讲求实用,做产品应该是在规定的条件下用你最拿手的技能最稳定可靠的实现,可以不断追求自己在某些技能上的提升,但没必要玩技术,玩技术拿是兴趣小组的事。
你说的问题,单片机的C编程可以说我的理解算是比较深的,真的从来没用过,也没见过,可以这么说,这种用法可能有不少单片机的编译器并不支持。
当然你想弄清楚这个问题的想法是好的,至少是能进一步理解C语言的某个知识点,我用这样一个例子来给你做一个解释,相信你就不会再觉得这种写法奇怪。
我们想用一个指针指向一段字符的首地址,可以这么定义
char *p;
char str[]={'a','b','c','d','e'};
p=(char*)str;
实际上我们也能这么定义
char *p="abcde";
后一种定义就类似你提的问题,实际程序是隐含定义了一个应用程序不可见的字符串数组str[]={'a','b','c','d','e'},明白了吗?
|