c - exit 函数没有达到我的预期

标签 c

所以在我执行代码后它不会退出它,所以我想我应该在最后添加退出函数,但它仍然不会退出程序。

  if(bclass)
  {
 if(d==0) printf("Scanez %d.%d.%d.*\n",a,b,c);
 d++;
 if(d>255)
 {
  c++;d=0;
 }
 sprintf(ip,"%d.%d.%d.%d",a,b,c,d);
 if((c==255) && (d==255))                                                           {
  printf("%s\n",ip);                                                                 printf("[+] Scanarea s-a incheiat cu succes!\n");
  sleep(10);
  kill(pid,2);
  exit(0);
  return 0;
 }
 sc.s_addr=inet_addr(ip);
 dstip=sc.s_addr;
  }

最佳答案

正如其他人建议的那样,您应该阅读 Minimal, Complete, and Verifiable example

现在解释一下代码中的问题。

首先是你的整个代码。如果它不在 main() 函数中,则 return 0; 将不会退出程序,而是从方法中返回 0

退出程序的方法是exit(0);,但它永远不会执行,因为它是在return之后

如果 up 代码位于 main() 内,它仍然有可能到达 return 0 部分,因为它位于 if((c==255) 内&& (d==255)),因此如果不满足该条件,您的代码将不会达到 return

关于c - exit 函数没有达到我的预期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53547346/

相关文章:

当数据复制/扫描/读取到未初始化的指针时崩溃或 "segmentation fault"

c - 字符串和子字符串

c - 如何将变量放置在内存中给定的绝对地址(使用 GCC)

c - 如何在C中生成欧元符号?

c - 程序不在声明的目录路径中运行,仅在当前目录中运行

c - 当参数之一是函数调用时,printf 如何在 c 中工作

c++ - 取消引用指向未知类型变量的指针

在数组中创建实际的随机数据

curses.h 库中的 Clear() 函数

更改c语言中的输入文本颜色