📄 mmlib.h
字号:
#ifndef MMLIB_H#define MMLIB_H#include <regex.h>#include <stdio.h>#include <gtk/gtk.h>static gboolean isShow;static gint toutFlag = -1;static inline char *_(char *c) {return(g_locale_to_utf8(c,-1,0,0,0));} //static inline char *_(char *c) {return c;} static void mm_widget_destroy(GtkWidget *widget, GtkWidget *window){ gtk_widget_destroy(window); isShow = FALSE; if(toutFlag != -1) gtk_timeout_remove(toutFlag); }/** type: GTK_MESSAGE_INFO, GTK_MESSAGE_ERROR, * GTK_MESSAGE_WARNING or GTK_MESSAGE_QUESTION*/static void msg_dialog(GtkMessageType type, const char* msg){ GtkWidget *dialog; dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT, type, GTK_BUTTONS_OK, msg); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog);}static gint ipadr_check(const char * elment){ regex_t preg; int value; gint ret = -1; char *regex = "^[1-2]{0,1}[0-9]{1,2}\\.[1-2]{0,1}[0-9]{1,2}\\.[1-2]{0,1}[0-9]{1,2}\\.[1-2]{0,1}[0-9]{1,2}$"; const char *ip = elment; const char *p = ip; if (regcomp(&preg, regex, REG_EXTENDED) == 0){ if(regexec(&preg, ip, 0, NULL, 0) == 0){ value = atoi(p); while((value>=0) && (value<255)){ if(p = strpbrk(p, ".")) value = atoi(++p); else value = -1; } if(value==-1){ ret = 0; } } } regfree(&preg); return ret;}static gint ipv6adr_check(const char * elment){ regex_t preg; gint ret = -1; char *regex = "[0-9A-Fa-F]{0,4}:{2,7}[0-9A-Fa-f]{0,4}[/]{0,1}[0-9]{0,3}"; const char *ip = elment; if (regcomp(&preg, regex, REG_EXTENDED) == 0) if(regexec(&preg, ip, 0, NULL, 0) == 0) ret++; regfree(&preg); return ret;}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -