LINUX.ORG.RU

История изменений

Исправление gag, (текущая версия) :

Tiny C Compiler

#!/usr/bin/tcc -run

#define _GNU_SOURCE // get_current_dir_name

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

int main(int argc, char* argv[])
{
        printf("Hello world!\n");
        char *cur_dir_name = get_current_dir_name();
        printf("cwd: %s\n", cur_dir_name);
        printf("args:\n");
        for (int i = 1; i < argc; i++)
                printf("  %s\n", argv[i]);
        free(cur_dir_name);
        return 0;
}
Где-то 12 мс.

gcc на компиляцию тратит около 70 мс.

Исправление gag, :

Tiny C Compiler

#!/usr/bin/tcc -run

#define _GNU_SOURCE // get_current_dir_name

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

int main(int argc, char* argv[])
{
        printf("Hello world!\n");
        char *cur_dir_name = get_current_dir_name();
        printf("cwd: %s\n", cur_dir_name);
        printf("args:\n");
        for (int i = 1; i < argc; i++)
                printf("  %s\n", argv[i]);
        free(cur_dir_name);
        return 0;
}
Где-то 12 мс.

Исходная версия gag, :

Tiny C Compiler

#!/usr/bin/tcc -run

#define _GNU_SOURCE // get_current_dir_name

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

int main(int argc, char* argv[])
{
        printf("Hello world!\n");
        char *cur_dir_name = get_current_dir_name();
        printf("cwd: %s\n", cur_dir_name);
        printf("args:\n");
        for (int i = 1; i < argc; i++)
                printf("  %s\n", argv[i]);
        free(cur_dir_name);
        return 0;
}


Где-то 12 мс.