有没有一种方法可以在python中放置一个c函数而不下载任何内容

2024-06-16 12:28:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我是c新手,但对python并不陌生,所以我想知道是否有一种方法可以在不使用任何非内置模块的情况下将函数从c移到python中。我学习了一点c语言,只是为了理解python的一些东西是如何工作的,这就是为什么我不想下载任何东西。无论如何,这是我想引入python的函数

int c_kbhit(void)
{
  struct termios oldt, newt;
  int ch;
  int oldf;

  tcgetattr(STDIN_FILENO, &oldt);
  newt = oldt;
  newt.c_lflag &= ~(ICANON | ECHO);
  tcsetattr(STDIN_FILENO, TCSANOW, &newt);
  oldf = fcntl(STDIN_FILENO, F_GETFL, 0);
  fcntl(STDIN_FILENO, F_SETFL, oldf | O_NONBLOCK);

  ch = getchar();

  tcsetattr(STDIN_FILENO, TCSANOW, &oldt);
  fcntl(STDIN_FILENO, F_SETFL, oldf);

  if (ch != EOF)
  {
    ungetc(ch, stdin);
    return 1;
  }

  return 0;
}

它来自conio.h标题,但我只想要一个函数。提前谢谢你的帮助


Tags: 函数returnstdinchint新手filenofcntl