legongju.com
我们一直在努力
2025-01-10 12:50 | 星期五

getchar在Linux多线程编程中的应用

getchar() 是一个C语言库函数,用于从标准输入(通常是键盘)读取一个字符

在Linux多线程编程中,你可以在一个单独的线程里使用 getchar(),以便在其他线程执行任务时接收用户输入。这种方法可以让你的程序在执行复杂任务时保持对用户输入的响应。

下面是一个简单的示例,展示了如何在Linux多线程编程中使用 getchar()

#include
#include 
#include 
#include 

void* input_thread(void *arg) {
    char c;
    printf("Press 'q' to quit\n");
    while ((c = getchar()) != 'q') {
        printf("You pressed: %c\n", c);
    }
    return NULL;
}

void* worker_thread(void *arg) {
    int i;
    for (i = 0; i < 5; i++) {
        printf("Worker thread: Doing some work...\n");
        sleep(1);
    }
    return NULL;
}

int main() {
    pthread_t input_tid, worker_tid;

    // 创建输入线程
    if (pthread_create(&input_tid, NULL, input_thread, NULL) != 0) {
        perror("Failed to create input thread");
        exit(1);
    }

    // 创建工作线程
    if (pthread_create(&worker_tid, NULL, worker_thread, NULL) != 0) {
        perror("Failed to create worker thread");
        exit(1);
    }

    // 等待线程结束
    pthread_join(input_tid, NULL);
    pthread_join(worker_tid, NULL);

    printf("All threads finished.\n");
    return 0;
}

在这个示例中,我们创建了两个线程:一个用于接收用户输入,另一个用于执行一些模拟工作。当用户按下 ‘q’ 键时,程序将退出。

未经允许不得转载 » 本文链接:https://www.legongju.com/article/98738.html

相关推荐

  • Linux下gcc命令如何编译C++程序

    Linux下gcc命令如何编译C++程序

    在 Linux 下,你可以使用 g++ 命令来编译 C++ 程序 打开终端。
    使用 cd 命令导航到包含你的 C++ 源代码文件(例如,main.cpp)的目录。
    输入以下命令来...

  • Linux gcc命令如何进行跨平台编译

    Linux gcc命令如何进行跨平台编译

    要使用GCC进行跨平台编译,你需要针对目标平台安装交叉编译工具链。交叉编译工具链包括一个针对目标平台的编译器、链接器和库。以下是一个简单的步骤来进行跨平台...

  • Linux下gcc命令如何设置编译器标志

    Linux下gcc命令如何设置编译器标志

    在 Linux 下,使用 gcc 命令时,可以通过设置编译器标志(也称为编译选项)来调整编译过程 -g:生成调试信息。这将在生成的可执行文件中包含源代码的调试信息,有...

  • Linux中gcc命令如何查看编译版本

    Linux中gcc命令如何查看编译版本

    在 Linux 系统中,您可以使用以下命令来查看 GCC 编译器的版本:
    gcc --version 这将显示 GCC 编译器的版本信息,包括主版本号、次版本号和补丁级别。例如:...

  • Linux下getchar函数的使用场景分析

    Linux下getchar函数的使用场景分析

    getchar() 是一个C语言库函数,用于从标准输入(通常是键盘)读取一个字符 命令行程序:在编写命令行程序时,getchar() 可以用于接收用户输入。例如,你可能需要...

  • 如何处理Linux中getchar的异常情况

    如何处理Linux中getchar的异常情况

    在 Linux 中,getchar() 函数用于从标准输入(通常是键盘)读取一个字符 检查返回值:getchar() 函数在成功读取到一个字符时返回该字符,否则返回 EOF。你可以检...

  • Linux下getchar与scanf的区别是什么

    Linux下getchar与scanf的区别是什么

    在 Linux 下,getchar() 和 scanf() 都是用于从标准输入(通常是键盘)读取数据的函数 函数原型: getchar() 是一个简单的字符读取函数,其原型为 int getchar(v...

  • getchar在Linux命令行中的实用技巧

    getchar在Linux命令行中的实用技巧

    getchar() 是一个C语言函数,用于从标准输入(通常是键盘)读取一个字符 使用 getchar() 暂停程序:
    在程序中添加 getchar(); 可以使程序暂停,直到用户按下...