#include <stdio.h>
#include <string.h>
int foo(char* a)
{ char str[10];
if (strlen(a)<10)
{
sprintf(str,"Yes");
puts(str);
return 0;
}
else
{
sprintf(str,"No");
puts(str);
return 1;
}
}
Теперь, позволяет сказать, что при написании LLVM пройти, я хочу, чтобы убедиться, что вместо вызова Sprintf, Printf вызывается вместо (с теми же аргументами) , Как я мог это сделать?Изменение исходного кода во время компиляции (с использованием LLVM)
Это не имеет никакого смысла. Прототипы для 'sprintf' и' printf' различны. И вы не передаете достаточно аргументов в 'sprintf' в вашем примере. Что именно вы пытаетесь достичь? –
Исправлено. Я предпочел бы, чтобы один printf() заменил {sprintf() + puts()} на проход LLVM. Я впервые пробовал LLVM, задавался вопросом, как можно это делать. – t7t0t0t7t