c++windowssignalssigint

How to cause a SIGINT in C++?


According to this http://www.cplusplus.com/reference/clibrary/csignal/signal.html

SIGINT is generally used/cause by the user. How do i cause a SIGINT in c++? i seen an example using kill(pid, SIGINT); but i rather cause it another way. Also i am using windows.


Solution

  • C89 and C99 define raise() in signal.h:

    #include <signal.h>
    
    int raise(int sig);
    

    This function sends a signal to the calling process, and is equivalent to

    kill(getpid(), sig);
    

    If the platform supports threads, then the call is equivalent to

    pthread_kill(pthread_self(), sig);
    

    The return value is 0 on success, nonzero otherwise.