C++中的两种类型的矩阵输出
Two types of matrix output in C++
我在不同的编译器中尝试了很多次,但都得到了相同的结果。我的问题是:
在C++中,给定int a[10];
作为a
的声明,则a[0]
和0[a]
的含义相同。我声称:
cout << a[0];
与相同
cout << 0[a];
请向我解释为什么a[i]
与C++中的i[a]
相同,其中i
是一个整数。
因为数组索引操作在内部被解释为*(a+i)
。
假设我声明一个数组:int a[10];
现在a
表示数组在内存中的开头的某个内存地址,您可以将索引视为该内存地址的偏移量。
因此,当将索引运算应用于数组时,其值定义如下:a[i] = *(a+i)
通过加法的交换性质,您可以看到a[0] = 0[a]
,因为语言是如何定义索引运算的。
相关文章:
- 在C++中将函数压缩为两种方式
- 如何使映射键具有两种不同的数据类型?
- 两种访问I2C总线的方法有什么区别?
- 两种模板示例有什么区别?
- 如何构造可以调用和返回两种不同类型的模板
- 这两种C++语法之间有什么区别?
- 为什么两种不同的对象初始化方式给出不同的输出
- std::cin 从控制台获取两种不同的变量类型,'storing'以后使用第二种类型?
- 定义类模板构造函数的两种方法之间的区别
- 初始化类的两种方法?
- C++ 一个函数,可以根据接受的值返回两种类型之一
- 如何检查程序员在C++中提供的两种不同格式的输入
- C++指针中的这两种类型的值分配有什么区别?
- 如何在 main 函数中输出两个新字符串C++?
- 两种情况下的输出不应该相同吗?
- 为什么这两种输出样式给出不同的答案
- 如何根据两种输入状态编写输出结果
- C++中的两种类型的矩阵输出
- 我的c++代码在ideone和codeforces自定义测试中提供了两种不同的输出
- 两种排序算法在同一个数组上给出了两种不同的输出(quickSort和heapSort)