#include <stdio.h> #include <sys/socket.h> #include <netinet/in.h> #include <string.h> int main() { int server_fd, client_fd; struct sockaddr_in server_addr, client_addr; char response[] = "HTTP/1.1 200 OK Content-Length: 12 Hello, World!"; server_fd = socket(AF_INET, SOCK_STREAM, 0); memset(&server_addr, 0, sizeof(server_addr)); server_addr.sin_family = AF_INET; server_addr.sin_addr.s_addr = htonl(INADDR_ANY); server_addr.sin_port = htons(8080); bind(server_fd, (struct sockaddr*)&server_addr, sizeof(server_addr)); listen(server_fd, 5); while(1) { int client_len = sizeof(client_addr); client_fd = accept(server_fd, (struct sockaddr*)&client_addr, &client_len); write(client_fd, response, sizeof(response)); C语言面临Golang的挑战? close(client_fd); } return 0; }
登录后复制