signal集程序一点疑问

只是作为学习过程中记录,建议不要参考

程序:

#include <stdio.h>  
    #include <signal.h>  
    void checkset();  
      
    void main()  
    {  
         sigset_t blockset;  
         sigemptyset(&blockset);  
         sigaddset(&blockset,SIGINT);  
         sigaddset(&blockset,SIGTSTP);  
      
         checkset();  
      
         sigprocmask(SIG_SETMASK,&blockset,NULL);  
         checkset();  
      
         sigaddset(&blockset,SIGTERM);  
         sigprocmask(SIG_BLOCK,&blockset,NULL);  
         checkset();  
      
         sigdelset(&blockset,SIGTERM);  
         sigprocmask(SIG_UNBLOCK,&blockset,NULL);  
         checkset();  
    }  
      
    void checkset()  
    {  
      
         sigset_t set;  
         printf("checkset start:\n");  
      
         if(sigprocmask(0,NULL,&set)<0)  
         {  
         printf("checkset sigprocmask error!!\n");  
         exit(0);  
         }  
      
         if(sigismember(&set,SIGINT))  
         printf("sigint\n");  
         if(sigismember(&set,SIGTSTP))  
         printf("sigtstp\n");  
      
         if(sigismember(&set,SIGTERM))  
         printf("sigterm\n");  
          printf("checkset end\n");  
    } 
结果:

yuan@YUAN:~/program$ ./sigprocmask
checkset start:
checkset end
checkset start:
sigint
sigtstp
checkset end
checkset start:
sigint
sigtstp
sigterm
checkset end
checkset start:
sigterm
checkset end
yuan@YUAN:~/program$

不明白sigset_t set 是怎么被赋值的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 数字信号处理(Digital Signal Processing,DSP)是一种通过数学算法和计算机技术来处理和分析数字信号的方法。C语言是一种广泛应用于嵌入式系统和科学计算领域的编程语言,它具有高效、灵活、可移植等特点。因此,在数字信号处理中,C语言和程序语言常常被用于实现DSP算法和程序程序语言是一种底层的编程语言,它与特定的硬件架构紧密相关,对硬件资源的使用更加精细控制,可以充分发挥硬件的性能。相比之下,C语言是一种高级语言,更加容易理解和使用,具有较好的可读性和可维护性。 在数字信号处理中,程序语言常常用于实现性能要求较高的算法,如快速傅立叶变换(FFT)、卷积等。程序语言可以直接访问硬件的寄存器和指令,对于一些对运算速度和效率要求较高的算法,使用程序语言可以充分利用硬件的性能优势。 而C语言则通常用于实现数字信号处理的高级模块和控制逻辑,如滤波器、音频编解码等。C语言具有较好的可移植性和代码可读性,便于调试和维护。而且,在C语言中,可以方便地调用程序语言实现的函数,从而既能发挥程序语言的优势,又能减少编程的复杂性。 总的来说,数字信号处理中的C语言程序是一种高效而灵活的编程方式。通过合理利用C语言和程序语言的优势,可以实现高性能、高效率的数字信号处理算法和程序。 ### 回答2: 数字信号处理(DSP)是一种涉及对数字信号进行处理和分析的技术领域。C语言是一种高级程序设计语言,非常适合用于编写数字信号处理程序。此外,程序语言是一种底层语言,可用于编写高效的、对硬件资源要求更低的程序。 在数字信号处理领域,使用C语言编写程序具有以下优点: 1. C语言是一种高级语言,易于理解和学习,代码的可读性好,可以减少开发时间和工作量。 2. C语言具有丰富的库函数和数据类型,可方便地进行各种数值计算和信号处理操作。 3. C语言支持灵活的内存管理,可以更有效地利用计算资源。 4. C语言具有丰富的标准和第三方工具,为数字信号处理开发提供了广泛的支持和资源。 同时,使用程序语言编写数字信号处理程序也具有以下优势: 1. 程序语言可以对处理器的寄存器和指令进行直接访问,可以更精确地控制程序的运行和优化性能。 2. 程序语言可以使用更低级别的指令,对硬件资源的利用更加高效。 3. 程序语言可以更好地优化内存使用,减少程序的存储和执行开销。 综上所述,数字信号处理可以使用C语言编写程序,通过C语言编写高级算法和逻辑,使用程序语言进行底层控制和优化。这样可以充分发挥C语言的易用性和程序语言的高效性,实现数字信号处理的各种功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值