Record Case Detail

Notes

This function is in beta test. Please help improve it in the issues here.

Stderr

=================================================================
==30958==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6070000000e0 at pc 0x55dfb1ffc450 bp 0x7fffc0cd96f0 sp 0x7fffc0cd96e0
READ of size 4 at 0x6070000000e0 thread T0
    #0 0x55dfb1ffc44f in intMatrix::getElement(int, int) (/out/package/ex3+0x1744f)
    #1 0x55dfb1ff6b51 in main (/out/package/ex3+0x11b51)
    #2 0x7f0974fddb96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    #3 0x55dfb1ff3f19 in _start (/out/package/ex3+0xef19)

0x6070000000e0 is located 0 bytes to the right of 80-byte region [0x607000000090,0x6070000000e0)
allocated by thread T0 here:
    #0 0x7f097674f608 in operator new[](unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0608)
    #1 0x55dfb1ffba5f in intMatrix::intMatrix(int, int, int) (/out/package/ex3+0x16a5f)
    #2 0x55dfb1ff68ae in main (/out/package/ex3+0x118ae)
    #3 0x7f0974fddb96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)

SUMMARY: AddressSanitizer: heap

Hints

Your answer may be identical to the JOJ answer in the first several lines.

However, the main problem you meet now is Runtime Error. And the exit code of your program is 1, which should be 0.

Please double check your code to solve this problem and try again.

Your Answer

Testing getElement 2: 4 pts
Matrix Information:
rows: 4
cols: 5

JOJ Answer

Testing getElement 2: 4 pts
Matrix Information:
rows: 4
cols: 5
Matrix[1][5] = 1
Matrix[1][1] = 1
Matrix[2][3] = 1
Matrix[4][5] = 1