Skip to main content
Glama
simple.c2.09 kB
/** * IDA-MCP 简单测试程序 * * 用途:测试基本的 IDA 分析功能 * - 函数列表、反汇编、反编译 * - 字符串识别 * - 全局变量 * - 交叉引用 */ #include <stdio.h> #include <string.h> // 全局变量 int g_counter = 0; const char *g_app_name = "IDA-MCP Test"; char g_buffer[256] = {0}; // 简单的辅助函数 int add_numbers(int a, int b) { return a + b; } int multiply_numbers(int a, int b) { return a * b; } // 使用全局变量的函数 void increment_counter(void) { g_counter++; } int get_counter(void) { return g_counter; } // 字符串处理函数 void print_message(const char *msg) { printf("[%s] %s\n", g_app_name, msg); } void copy_to_buffer(const char *src) { strncpy(g_buffer, src, sizeof(g_buffer) - 1); g_buffer[sizeof(g_buffer) - 1] = '\0'; } // 带条件分支的函数 int calculate(int op, int a, int b) { switch (op) { case 0: return add_numbers(a, b); case 1: return multiply_numbers(a, b); case 2: return a - b; case 3: if (b != 0) return a / b; return 0; default: return -1; } } // 带循环的函数 int sum_range(int start, int end) { int sum = 0; for (int i = start; i <= end; i++) { sum = add_numbers(sum, i); increment_counter(); } return sum; } // 递归函数 int factorial(int n) { if (n <= 1) return 1; return n * factorial(n - 1); } // main 函数 int main(int argc, char *argv[]) { print_message("Starting test program"); // 测试基本运算 int result = calculate(0, 10, 20); printf("10 + 20 = %d\n", result); result = calculate(1, 5, 6); printf("5 * 6 = %d\n", result); // 测试循环 result = sum_range(1, 10); printf("Sum 1-10 = %d, counter = %d\n", result, get_counter()); // 测试递归 result = factorial(5); printf("5! = %d\n", result); // 测试字符串 if (argc > 1) { copy_to_buffer(argv[1]); print_message(g_buffer); } print_message("Test completed"); return 0; }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jelasin/IDA-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server