4
A
回答
2
a [10]表示:“从内存地址10开始,向其中添加一个并引用结果位置” 10 [a]表示:“从内存地址a开始,向其中添加10并引用结果位置“
由于+ 10与10 + a相同,因此这两个表达式都会引用相同的内存位置。
+1
我认为你把第一句话倒退了 – StoryTeller 2013-02-18 10:01:08
+0
错了。第一个句子的意思是'10 + a * sizeof(a [i])',而第二个意思是'a + 10 * sizeof(a)',当sizeof(a)不是1时明显错误。只适用于'char *'之类的 – 2013-12-17 11:41:57
6
相关问题
- 1. java中a + = 10和a = a + 10之间的区别?
- 2. raw_input A = 10,如果A == 10给出false:Python
- 3. 差 “的char [10]”
- 4. 什么INT * V [10]和INT(* P)之间的差值[10]
- 5. DirectX 10绘图a .PNG
- 6. strcat的问题* A [10]
- 7. 1:10和0.1之间的差异:1.0
- 8. Erlang的安装误差10
- 9. laravel 5.3安装误差10
- 10. CIFAR-10尺寸误差Keras
- 11. 如何为int a [10] [10]分配内存分配器
- 12. Sorting a Dictionary,Programming in C,Stephen Kochan,Chapter 10,Exercise 10
- 13. java.lang.ArrayIndexOutOfBoundsException:length = 10;指数= 10
- 14. num = + 10和num + = 10有什么区别?
- 15. Byte.decode(“10”)和Byte.valueOf(“10”) - 有什么区别?
- 16. jdbcTemplate和Oracle 10
- 17. ColdFusion 10和Azure
- 18. MaxWebConfigFileSizeInKB和IIS 10
- 19. TeamCity 10和xUnit
- 20. Indy 10和OpenSSL
- 21. Indy 10和sslvTLSv1_2
- 22. Android java.lang.ArrayIndexOutOfBoundsException:length = 10; index = 10
- 23. UIslider 10增加10
- 24. ArrayList java.lang.ArrayIndexOutOfBoundsException:length = 10; index = 10
- 25. 为什么{10 +'1'} + 10等于10?
- 26. 转换炭C = 'a' 到int值= 10
- 27. 葫芦和iOS 10
- 28. BlackBerry 10,Camera和FILE_NOT_FOUND_ERR
- 29. Keras CIFAR-10值误差不同tensorshape
- 30. 赢10 UAP:TimeTrigger和Application.OnBackgroundActivated
您确定吗?或者你只是要求访问数组的一个元素,而不是定义一个元素。 – 2013-02-18 09:46:35
[编译错误](http://liveworkspace.org/code/33824t$0) – 2013-02-18 09:48:22
答案已经告诉你为什么会出现这种情况(因为数组降级为指针),但是你应该注意到** 10 [a]是非常糟糕的做法**,因为它没有传达意图,它只是语法混淆了你的代码的读者。实际上客观上语法较差,因为在索引上的算术比基于数组的算术更加频繁,并且[2 * x]比(2 * x)[a]短。 – 2013-02-18 09:52:56