/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/cpp/cpp-506-1005-005/main.cpp
53 строки
1 KB
Spirzen
Code migration pack
09 июн 2026, 01:41
09 июн 2026, 01:41
cebc284
Код
Авторство
О чём код?
#include <iostream> #include <string> #include <sys/socket.h> #include <netinet/in.h> #include <unistd.h> #include <cstring> #define PORT 8080 void handleClient(int clientSocket) { char buffer[1024]; ssize_t bytesRead = read(clientSocket, buffer, sizeof(buffer) - 1); if (bytesRead > 0) { buffer[bytesRead] = '\0'; std::string response = "HTTP/1.1 200 OK\r\n" "Content-Type: text/plain\r\n" "Connection: close\r\n" "\r\n" "Hello from C++ Server!"; write(clientSocket, response.c_str(), response.length()); } close(clientSocket); } int main() { int serverSocket = socket(AF_INET, SOCK_STREAM, 0); struct sockaddr_in address; address.sin_family = AF_INET; address.sin_addr.s_addr = INADDR_ANY; address.sin_port = htons(PORT); bind(serverSocket, (struct sockaddr*)&address, sizeof(address)); listen(serverSocket, 3); std::cout << "Сервер запущен на порту " << PORT << std::endl; while (true) { struct sockaddr_in clientAddress; socklen_t clientLen = sizeof(clientAddress); int clientSocket = accept(serverSocket, (struct sockaddr*)&clientAddress, &clientLen); if (clientSocket < 0) continue; handleClient(clientSocket); } close(serverSocket); return 0; }