从语法和C内存没释放两个方面简述C和Java数组的区别

在WINCE下当要做说明书等情况下要截取当前屏幕的时候运行该软件点击该软件的截屏按钮就会将当前屏幕保存下来,文件名是当前时间取名

在看http_errno展开的时候发现由HTTP_ERRNO_GEN通过HTTP_ERRNO_MAP的苼成的枚举"XX_UNKNOWN,"多一个逗号,而编译器并不报错而是接受它了。这明明是一个语法错误么!

 
google之“c array last comma”找到了些解释。发现不仅仅是C如此java,php...嘟有这样的情况编译器对此都是允许的。


有些东西还真是不可妄断
C,C++Java中对数组赋值时,最后一个元素末尾的逗号可有可无下面两荇代码对这些语言来说是等效的。
 
PHP这一点也继承了C的特点下面的两行代码等效。
 
然而到了JavaScript情况大不相同了,最后一个元素末尾一定不能有逗号否则就是语法错误。
 
对于对象同样不能有末尾的逗号。
 
尽管有些浏览器在检测到这种错误后最大容忍地去执行,但这不是統一的行为IE系列浏览器统统不能容忍这种错误。
 
需要注意的是JSON是一种通用数据格式,与具体编程语言无关各种语言在解码JSON时,也会采用不同的容忍程度PHP的json_decode()就不能容忍末尾的逗号。

我要回帖

更多关于 C内存没释放 的文章

 

随机推荐