當我的一位朋友解決在線評判問題時,我遇到了問題。 他撰寫案例1(例如)有一個撥錯的答案,有一個由案件受理2. int a[4];
a[ 2+6-5 ]; //undefined behavior? case 1
a[ 2+(6-5) ];//ok case 2
Accroding到C++的std§5.7.5 if a[ 2+6-5 ] == *(a + 2+6-5); //ub
if a
#include <iostream>
int main()
{
int *ptr = NULL;
// It does not crash
*ptr; --------> Point-1
//But this statment crashed
std::cout<<"Null:"<<*ptr<<"\n"; ------> Point-2