stack smashing detected 的处理

    栈溢出实际上是一个保护机制,使用gcc来检测缓冲区溢出攻击。

  输入的字符串大于边界导致腐败的gcc内置保护金丝雀变量,SIGABRT终止程序。

您可以禁用此保护使用gcc选项  -fno-stack-protector 而编译。
在这种情况下,你会得到一个分割的错,如果你试图访问非法内存位置。当然你也可以检测溢出的角度说,例如使用Valgrind的。

你可能感兴趣的:(stack smashing detected 的处理)