信號

信號練習

開啟 ubuntu ,新增一個檔案 external.c,貼上以下程式碼

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <signal.h>

void handler(int sig) {
	printf("You think hitting ctrl-c will stop the bomb?\n");
	sleep(2);
	printf("Well...");
	fflush(stdout);
	sleep(1);
	printf("OK\n");
	exit(0);
}

int main(){
	signal(SIGINT, handler);
	while(1){
	}
}

編譯這個程式並且執行他

gcc -o external external.c
./external

炸彈蹦蹦蹦 (可莉炸魚)

可莉迷因- 梗圖產生器(手工模式)

新增一個檔案 internal.c

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>

int beeps = 0;

void handler(int sig) {
	printf("BEEP\n");
	fflush(stdout);

	if (++beeps < 5)
	alarm(1);
	else {
		printf("BOOM!\n");
		exit(0);
	}
}

int main() {
	signal(SIGALRM, handler);
	alarm(1);

	while(1) {
	}
}

編譯這個程式並且執行他

gcc -o internal internal.c
./internal
SHXJ
Latest posts by SHXJ (see all)

發佈留言