This is a problem I encountered during my practice. I don't know how to explain it, but I want to expose them and remind myself again.
The program determines whether the input string or statement is a text return. punctuation is not considered, case is not considered, and numbers are not considered.
Some Problems in program compilation can only be identified as whether a specific statement is a return, which is not universal. As a result, this phenomenon occurs:
** Stack smashing detected **:/home/zimo/return terminated
======= Backtrace: ============
/Lib/tls/i686/cmov/libc. so.6 (_ fortify_fail + 0x48) [0xb7f836d8]
/Lib/tls/i686/cmov/libc. so.6 (_ fortify_fail + 0x0) [0xb7f83690]
/Home/zimo/return [0x8048611]
/Lib/tls/i686/cmov/libc. so.6 (_ libc_start_main + 0xe5) [0xb7e9f685]
/Home/zimo/return [0x80484a1]
======= Memory map: ========
08048000-08049000 R-XP 00000000 589379/home/zimo/Return
08049000-0804a000 r -- p 00000000 589379/home/zimo/Return
0804a000-0804b000 RW-P 00001000 589379/home/zimo/Return
088ce000-088ef000 RW-P 088ce000 00:00 0 [heap]
B7e88000-b7e89000 RW-P b7e88000 0
B7e89000-b7fe1000 R-XP 00000000 668489/lib/tls/i686/cmov/libc-2.8.90.so
B7fe1000-b7fe3000 r -- p 00158000 668489/lib/tls/i686/cmov/libc-2.8.90.so
B7fe3000-b7fe4000 RW-P 0015a000 07:00 668489/lib/tls/i686/cmov/libc-2.8.90.so
B7fe4000-b7fe7000 RW-P b7fe4000 0
B7fee000-b7ffb000 R-XP 00000000 651604/lib/libgcc_s.so.1
B7ffb000-b7ffc000 r -- p 0000c000 07:00 651604/lib/libgcc_s.so.1
B7ffc000-b7ffd000 RW-P rjd000 07:00 651604/lib/libgcc_s.so.1
B7ffd000-b8001000 RW-P b7ffd000 0
B8001000-b801b000 R-XP 00000000 653221/lib/ld-2.8.90.so
B801b000-b801c000 R-XP b801b000 0 [vdso]
B801c000-b801d000 r -- p 0001a000 07:00 653221/lib/ld-2.8.90.so
B801d000-b801e000 RW-P 0001b000 653221/lib/ld-2.8.90.so
Bfaab000-bfac0000 RW-P bffeb000 0 [Stack]
Program received signal SIGABRT, aborted.
0xb801b430 in _ kernel_vsyscall ()
I don't know how to explain it.