Онлайн C Компилятор
Пишите, запускайте и отлаживайте C code в режиме онлайн через CLI в браузере — без установки. Идеально для тестов и изучения.
👨💻 Изучайте 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);