What Is a Socket
Sockets are essential for network communication in C. A socket is an endpoint that lets a program send and receive data over a network. It provides a standard method for exchanging information between computers, forming the basis of most networked applications.
In C, sockets are created using the socket() system call. This function allows you to specify the communication domain (such as IPv4 or IPv6), the socket type (such as stream or datagram), and the protocol (like TCP or UDP). By correctly setting up these parameters, you control how your application will communicate over the network.
Understanding how to create and configure a socket is the first step toward building any networked application in C. You will use sockets to connect, send, and receive data, whether you are writing a client or a server.
simple_socket.c
123456789101112131415161718192021#include <stdio.h> #include <sys/socket.h> #include <netinet/in.h> int main() { // Create a socket: domain = AF_INET (IPv4), type = SOCK_STREAM (TCP), protocol = 0 (default) int sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd == -1) { perror("socket"); return 1; } printf("Socket created successfully! File descriptor: %d\n", sockfd); // Normally, you would use the socket here (bind, connect, etc.) // For this example, just close it. close(sockfd); return 0; }
Thanks for your feedback!
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Can you explain the parameters required for the `socket()` function in C?
How do I use the created socket to connect to a server?
What are the differences between stream and datagram sockets?
Awesome!
Completion rate improved to 8.33
What Is a Socket
Swipe to show menu
Sockets are essential for network communication in C. A socket is an endpoint that lets a program send and receive data over a network. It provides a standard method for exchanging information between computers, forming the basis of most networked applications.
In C, sockets are created using the socket() system call. This function allows you to specify the communication domain (such as IPv4 or IPv6), the socket type (such as stream or datagram), and the protocol (like TCP or UDP). By correctly setting up these parameters, you control how your application will communicate over the network.
Understanding how to create and configure a socket is the first step toward building any networked application in C. You will use sockets to connect, send, and receive data, whether you are writing a client or a server.
simple_socket.c
123456789101112131415161718192021#include <stdio.h> #include <sys/socket.h> #include <netinet/in.h> int main() { // Create a socket: domain = AF_INET (IPv4), type = SOCK_STREAM (TCP), protocol = 0 (default) int sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd == -1) { perror("socket"); return 1; } printf("Socket created successfully! File descriptor: %d\n", sockfd); // Normally, you would use the socket here (bind, connect, etc.) // For this example, just close it. close(sockfd); return 0; }
Thanks for your feedback!