C - 用户输入导致程序崩溃

标签 c text crash line

这可能被认为是一个奇怪的问题,但我正试图找出一种方法来根据我提供的输入使程序崩溃。就像一个无限循环或段错误。

程序非常标准。它使用 get_line 从文本文件中读取行,然后计算它们的长度。

我的问题基本上是:有没有人知道将任何技巧放入 txt 文件会导致程序在读取文本行时以某种方式崩溃?

如果没有看到代码的所有细节,这是无用的,我深表歉意。我不确定如何去问这样的问题。

最佳答案

假设代码是天真地编写的,您可以执行以下操作:

  1. 创建一个文本文件,其中的行数大于您在 get_line 中使用的缓冲区。

  2. 更改文件的权限并取消读取文件的权限。

  3. 在读取文件的过程中删除文件。

  4. 将数据放入 ASCII 字符范围之外的文件中,以查看程序的 react 。例如让它从二进制可执行文件而不是文本文件中读取。

  5. 在程序读取文件时向程序发送 SIGINT、SIGHUP。

  6. 让你的猫躺在键盘上。

最后..如果你想弄清楚你的程序崩溃的原因,请使用调试器而不是随机猜测。

关于C - 用户输入导致程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10275613/

相关文章:

python - 同时读取多个文件的每一行

r - 如何让R崩溃?

c - 使用 float 而不是 double 时出现奇怪的输出

C 中的冲突类型和先前的隐式声明

c - 正确的字符处理

serialization - protobuf 文本格式是什么样的?

android - 动态设置指向 strings.xml 中文本的链接

c - A* 在 C 中搜索 : implementation and performance on graph map

java - Java VM EXCEPTION_ACCESS_VIOLATION 的可能原因?

android - 我的应用程序 Splashscreen 在 android 4.0 Ice Cream Sandwich 上失败