Szerk.:
A működő változat:
(csak hogy ne a hülyeség maradjon itt, htha valakit érdekel a socket)
#include stdlib.h
#include stdio.h
#include string.h
#include signal.h
#include netdb.h
#include sys/prctl.h
#include netinet/in.h
#include arpa/inet.h
#include sys/types.h
#include sys/socket.h
int main(){
int my_socket;
int length;
struct sockaddr_in me;
struct sockaddr_in dest;
char buf[ ]="proba";
my_socket = socket( AF_INET, SOCK_DGRAM, 0 );
me.sin_family = AF_INET;
me.sin_port = htons(12343);
me.sin_addr.s_addr = inet_addr("127.0.0.1");
memset( &(me.sin_zero), '\0', 8 );
dest.sin_family = AF_INET;
dest.sin_port = htons(12344);
dest.sin_addr.s_addr = inet_addr("127.0.0.1");
memset( &( dest.sin_zero), '\0', 8 );
length = sizeof( struct sockaddr_in );
bind( my_socket, (struct sockaddr *)&me, length );
sendto( my_socket, buf, strlen(buf), 0, (struct sockaddr *)&dest, length );
return 0;
}
--------------------------------------
Hello,
újabb kérdésem van.
UDP-s kommunikációt szeretnék készíteni, de nem fordul, még rosszabb, hogy nem tudom miért :)
Egyébként a hiba nem valószínű, hogy kifejezetten az UDP-implementáció miatt van, valószínűleg hiányzik egy header, vagy ilyesmi, de sehogy sem sikerült rájönnöm, hogy mi.
A kód:
#include stdlib.h
#include stdio.h
#include iostream
#include string.h
#include signal.h
#include netdb.h
#include sys/prctl.h
#include netinet/in.h
#include sys/types.h
#include sys/socket.h
using namespace std;
int my_socket;
int length;
struct sockaddr_in me;
struct sockaddr_in dest;
char buf[ ]="proba";
my_socket = socket( AF_INET, SOCK_DGRAM, 0 );
me.sin_family = AF_INET;
me.sin_port = 0;
me.sin_addr = INADDR_ANY;
memset( &(me.sin_zero), '\0', 8 );
dest.sin_family = AF_INET;
dest.sin_port = htons(12344);
dest.sin_addr = inet_addr("127.0.0.1");
memset( &( dest.sin_zero), '\0', 8 );
length = sizeof( struct sockaddr_in );
bind( my_socket, (struct sockaddr *)&me, length );
int main(){
sendto( my_socket, buf, strlen(buf), 0, (struct sockaddr *)&dest, length );
return 0;
}
-----------------
A hibaüzenet:
client2.cpp:21: error: expected constructor, destructor, or type conversion before ‘=’ token
client2.cpp:23: error: expected constructor, destructor, or type conversion before ‘.’ token
client2.cpp:24: error: expected constructor, destructor, or type conversion before ‘.’ token
client2.cpp:25: error: expected constructor, destructor, or type conversion before ‘.’ token
client2.cpp:26: error: expected constructor, destructor, or type conversion before ‘(’ token
client2.cpp:28: error: expected constructor, destructor, or type conversion before ‘.’ token
client2.cpp:29: error: expected constructor, destructor, or type conversion before ‘.’ token
client2.cpp:30: error: expected constructor, destructor, or type conversion before ‘.’ token
client2.cpp:31: error: expected constructor, destructor, or type conversion before ‘(’ token
client2.cpp:33: error: expected constructor, destructor, or type conversion before ‘=’ token
client2.cpp:34: error: expected constructor, destructor, or type conversion before ‘(’ token
a 21. sor egyébként a my_socket = socket( AF_INET, SOCK_DGRAM, 0 );
----------------