voici mon code:
/ *****************************/
/ * Console T´Chat */
/ * -------------- */
/ * Programme de dialogue... */
/ *****************************/
/ / insertion des headers
- include < stdio.h>
- include < winsock2.h>
- include < windows.h>
- include < string.h>
/ / variables globales
WSADATA wsa;
SOCKET sock;
SOCKADDR_IN sin;
/ / fonction d´initialisation des socket
void init_socket()
{
char add_ip[15]; / / variable pour stocker l´adresse IP
WSAStartup(MAKEWORD(2, 0), &); / / init winsock
// demande de l´adresse IP du correspondant
printf(" Entrez l´addresse IP du correspondant : " );
scanf("%s", add_ip);
sin.sin_family = AF_INET; / / socket internet
sin.sin_addr.s_addr = inet_addr(add_ip); / / adresse IP de communication
sin.sin_port = htons(666); / / port utilisé
sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); / / protocole UDP
bind(sock, ( SOCKADDR*)&, sizeof(sin)); / / propriété du socket
return;
}
/ / debut de transmission
void begin_transmit()
{
// definition de variable
char transmit_ok[5];
int confirm = 0;
printf("Tapez ok : " );
scanf("%s", transmit_ok);
while(confirm ! = 1)
{
sendto(sock, transmit_ok, sizeof(transmit_ok), 0, ( SOCKADDR*)&, sizeof(sin));
recvfrom(sock, transmit_ok, sizeof(transmit_ok), 0, ( SOCKADDR*)&, sizeof(sin));
if(strcmp(transmit_ok, " ok") == 0) / / si on reçoit le message
confirm = 1; / / on sort de la boucle
}
memset(transmit_ok, 0, sizeof(transmit_ok));
return;
}
/ / fonction pour le chat
void chat()
{
char reception[100];
char envoie[100];
while(1)
{
printf("Tape : " );
scanf("%s", envoie);
sendto(sock, envoie, sizeof(envoie), 0, ( SOCKADDR*)&, sizeof(sin));
recvfrom(sock, reception, sizeof(reception), 0, ( SOCKADDR*)&, sizeof(sin));
printf("%s", reception);
}
return;
}
/ / fonction principale du programme
int main()
{
printf("Console T´Chat\n");
printf("--------------\n\n");
init_socket(); / / initialise les sockets
begin_transmit(); / / commence la transmission
chat(); / / chat
return 1;
}
tout marche normalement sauf la fonction " void chat()", ca m´enerve parce que la je comprend vraiment pas pkoi ca marche pas ! !!