C++ C++;意外的数组输出

C++ C++;意外的数组输出,c++,arrays,sorting,C++,Arrays,Sorting,为什么最后一个“值”不是7,而是sci中的那个数字。表示法???数组大小声明为6个元素,然后在其中放置7个元素[0…6] 重新声明数组大小为7,然后在数组中循环时更改所有的值。循环必须从0开始到大小1。 因此,不要使用小于或等于: Please enter sale number 1 :1 Please enter sale number 2 :2 Please enter sale number 3 :3 Please enter sale number 4 :4 Please enter s

为什么最后一个“值”不是7,而是sci中的那个数字。表示法???

数组大小声明为6个元素,然后在其中放置7个元素[0…6]


重新声明数组大小为7,然后在数组中循环时更改所有的值。循环必须从0开始到大小1。 因此,不要使用小于或等于:

Please enter sale number 1 :1
Please enter sale number 2 :2
Please enter sale number 3 :3
Please enter sale number 4 :4
Please enter sale number 5 :5
Please enter sale number 6 :6
Please enter sale number 7 :7


Sale Number        Value
    0             1
    1             2
    2             3
    3             4
    4             5
    5             6
    6             7
Now we can display the array again! 



7


Sale Number        Value
    0             1
    1             2
    2             3
    3             4
    4             5
    5             6
    6  2.97079e-313


Press Enter to end the program

用于(int a=0;a比我快了一秒钟!+1给你,先生。另外,你能在回答中告诉他为什么缓冲区溢出是危险的吗。太棒了,谢谢。出于好奇,最后一个数字是从哪里来的?这只是内存的下一部分吗?@Jeremy:是的!正如wheaties提到的,在编程中有一个常见错误被黑帽黑客攻击,称为:缓冲区溢出和溢出。缓冲区溢出通常是指当您尝试在一个数组中放入更多可能容纳的项时发生的情况!缓冲区溢出是指当您尝试在数组边界之外迭代时发生的情况!啊哈,谢谢,我想错了(数组大小是元素的总数,而不是最终元素的数目)
Please enter sale number 1 :1
Please enter sale number 2 :2
Please enter sale number 3 :3
Please enter sale number 4 :4
Please enter sale number 5 :5
Please enter sale number 6 :6
Please enter sale number 7 :7


Sale Number        Value
    0             1
    1             2
    2             3
    3             4
    4             5
    5             6
    6             7
Now we can display the array again! 



7


Sale Number        Value
    0             1
    1             2
    2             3
    3             4
    4             5
    5             6
    6  2.97079e-313


Press Enter to end the program
for (int a = 0; a <= arraySize; a++)
for (int a = 0; a < arraySize; a++)