Untitled
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <arpa/inet.h> #define PORT 8080 #define BUFFER_SIZE 1024 int main() { int sockfd; struct sockaddr_in server_addr; char buffer[BUFFER_SIZE]; // Create socket if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0) { perror("Socket failed"); exit(EXIT_FAILURE); } server_addr.sin_family = AF_INET; server_addr.sin_port = htons(PORT); // Convert IP address from text to binary form if (inet_pton(AF_INET, "127.0.0.1", &server_addr.sin_addr) <= 0) { perror("Invalid address"); exit(EXIT_FAILURE); } // Connect to the server if (connect(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0) { perror("Connection failed"); exit(EXIT_FAILURE); } printf("Connected to the server\n"); // Communication loop while (1) { printf("Enter message to send to server: "); fgets(buffer, sizeof(buffer), stdin); // Send message to server send(sockfd, buffer, strlen(buffer), 0); // Receive server response memset(buffer, 0, sizeof(buffer)); int n = recv(sockfd, buffer, sizeof(buffer), 0); if (n <= 0) { printf("Server disconnected or error occurred\n"); break; } printf("Server: %s\n", buffer); } // Close the socket close(sockfd); return 0; }
Leave a Comment