程序在Visual C ++中突然终止

时间:2016-02-08 08:38:48

标签: c visual-studio

当我尝试执行此代码块时,如果我不使用getch()函数,它会突然关闭。此外,我尝试了接受和打印字符串的不同组合,如gets()puts()等。我的问题是导致此错误的原因以及如何删除此错误?

void main()
{
  char str[100];
  printf("Enter your string\n");
  fgets(str,100,stdin);
  printf("%s",str);
  getch();
}

2 个答案:

答案 0 :(得分:1)

void main()
{
  char str[100];
  printf("Enter your string\n");
  fgets(str,100,stdin);
  printf("%s",str);
  getch();
}

小程序有很多问题。

  1. 您正在使用getch();这需要您#include <conio.h>
  2. 您正在使用printf()家庭功能。这需要您#include <stdio.h>
  3. main()的函数原型必须为int main(void)
  4. 总之,这将是固定代码:

    #include <stdio.h>
    #include <conio.h>
    int main(void)
    {
      char str[100];
      printf("Enter your string\n");
      fgets(str,100,stdin);
      printf("%s",str);
      getch();
      return 0;
    }
    

    从cmd.exe命令行窗口运行它。

    它关闭的原因是因为在完成程序中的所有内容后,程序会自动终止。 Getch()只是让系统等待另一个输入。

答案 1 :(得分:0)

这是运行和附加调试器时的预期行为。尝试使用 ctrl + f5 运行。