Онлайн C Компилятор

Пишите, запускайте и отлаживайте C code в режиме онлайн через CLI в браузере — без установки. Идеально для тестов и изучения.

🚀 365,359 всего выполнений (45,069 в этом месяце)

Udemy Logo 👨‍💻 Изучайте C/C++ на практике с реальными проектами

Loading...

🧩 Об этом онлайн-исполнителе C

CodeUtility C Executor позволяет писать и запускать программы на C прямо в браузере — без установки и настройки компилятора. Он работает в защищённой песочнице, которая поддерживает реальные стандарты C, включая C89, C99, C11 и последнюю версию.

Этот инструмент использует настоящий компилятор C в облаке, чтобы компилировать и выполнять ваш код так же, как в нативной среде. Вы можете легко тестировать сниппеты, изучать синтаксис или практиковаться в написании полноценных программ с вводом и выводом.

Он создан, чтобы помочь ученикам и разработчикам быстро экспериментировать с основами C — такими как типы данных, указатели, циклы, функции, массивы и структуры — без установки какого-либо компилятора или IDE.

⚙️ Как пользоваться этим инструментом

  • 1. Выберите версию C (C89, C99, C11 или Latest) из выпадающего списка вверху редактора.
  • 2. Напишите или вставьте ваш C-код в область редактора.
  • 3. Нажмите Run, чтобы скомпилировать и выполнить программу — вывод появится в консоли ниже.
  • 4. Во время выполнения появится кнопка Stop — нажмите её, чтобы остановить выполнение раньше.
  • 5. Используйте Fix Code, чтобы автоматически исправить мелкие ошибки форматирования или синтаксиса.
  • 6. После исправления появится кнопка Fixes — нажмите её, чтобы просмотреть последние исправления.
  • 7. Кнопка Upload импортирует код из локального файла, а Download — сохранит текущий код из редактора.
  • 8. Каждое выполнение длится до 20 секунд, после чего автоматически завершается.

🧠 Совет: Это окружение безопасно выполняет настоящий код C прямо в вашем браузере — без входа и локальной настройки.

💡 Основы C и примеры, которые можно попробовать выше

1. Объявление переменных и констант

В C необходимо объявлять тип каждой переменной. Используйте #define или const для определения значений только для чтения.

int age = 30;
double pi = 3.14159;
char grade = 'A';
char name[] = "Alice";
bool isActive = 1; // истина

// Константы
#define MAX_USERS 100
const char* COMPANY = "CodeUtility";

2. Условия (if / switch)

Используйте if, else if и switch для ветвления.

int x = 2;
if (x == 1) {
    printf("Один\n");
} else if (x == 2) {
    printf("Два\n");
} else {
    printf("Другое\n");
}

switch (x) {
    case 1:
        printf("Один\n");
        break;
    case 2:
        printf("Два\n");
        break;
    default:
        printf("Другое\n");
}

3. Циклы

Используйте for, while и do-while для повторений.

for (int i = 0; i < 3; i++) {
    printf("%d\n", i);
}

int n = 3;
while (n > 0) {
    printf("%d\n", n);
    n--;
}

4. Массивы

Массивы хранят несколько элементов одного типа.

int numbers[3] = {10, 20, 30};
printf("%d\n", numbers[1]);

5. Структуры

struct позволяет группировать связанные данные.

struct Person {
    char name[50];
    int age;
};

struct Person p = {"Alice", 30};
printf("%s — %d лет\n", p.name, p.age);

6. Ввод/вывод в консоль

Используйте printf и scanf для работы с консолью.

char name[50];
printf("Введите ваше имя: ");
scanf("%s", name);
printf("Привет, %s\n", name);

7. Функции

Функции инкапсулируют переиспользуемую логику. Объявляйте тип возвращаемого значения, имя и параметры.

int add(int a, int b) {
    return a + b;
}

printf("%d\n", add(3, 4));

8. Указатели

Используйте указатели для хранения адресов памяти и косвенного изменения данных.

int x = 10;
int* ptr = &x;

printf("Значение x: %d\n", x);
printf("Адрес x: %p\n", ptr);
printf("Значение по указателю: %d\n", *ptr);

*ptr = 20;
printf("Обновлённое значение x: %d\n", x);

9. Работа с файлами

Используйте fopen, fprintf, fscanf и fclose для операций с файлами.

FILE* file = fopen("file.txt", "w");
fprintf(file, "Привет, файл");
fclose(file);

char line[100];
file = fopen("file.txt", "r");
fgets(line, sizeof(line), file);
printf("%s", line);
fclose(file);

10. Работа со строками

Используйте функции из <string.h>, такие как strlen, strcpy и strcmp.

#include <string.h>

char text[] = "Привет";
char copy[10];

strcpy(copy, text);
printf("Длина: %lu\n", strlen(copy));
printf("Сравнение: %d\n", strcmp(copy, "Привет"));

11. Динамическая память

Используйте malloc и free для выделения памяти в куче.

int* nums = (int*) malloc(3 * sizeof(int));
nums[0] = 1; nums[1] = 2; nums[2] = 3;

for (int i = 0; i < 3; i++) {
    printf("%d ", nums[i]);
}

free(nums);