Problem Socket in c++ Programm hinzuzufügen
-
Hallo,
ich habe ein Problem, ich möchte gerne das Array Values
über einen Socket an ein anderes Programm schicken.Wie fange ich da an, bzw. was muss ich da machen, wo starte ich am besten?
Das Programm schaut so aus:
[code][cpp]
#include "UrgCtrl.h"
#include <cstdlib>using namespace qrk;
using namespace std;//! main
int main(int argc, char *argv[])
{
const char device[] = "COM4";
//const char device[] = "/dev/ttyACM0";UrgCtrl urg;
urg.connect(device);
/* if (! urg.connect(device)) {
printf("UrgCtrl::connect: %s\n", urg.what());
getchar();
exit(1);
}*/// GD ƒRƒ}ƒ“ƒh‚ÅŽw’肳‚ꂽ‰ñ�”‚¾‚¯ƒXƒLƒƒƒ“‚ð�s‚¢�A�o—Í‚·‚é
enum { CaptureTimes = 1 };
double values[725];
for (int i = 0; i < CaptureTimes; ++i)
{
long timestamp = 0;
vector<long> data;// Žæ“¾
int n = urg.capture(data, ×tamp);// �o—Í
// printf("timestamp: %ld\n", timestamp);
FILE *ziel;
ziel = fopen("array.txt","w");
for (int j = 0; j < n; ++j)
{
values[j]=data[j];
fprintf(ziel,"%i",j);
fprintf(ziel,"%g",values[j]);fprintf (ziel,"\n");
}
fclose(ziel);
}
getchar();
return 0;
}
[code]Bin für alle Hilfen dankbar.
Ben
-
Schau mal in diesen Threads nach, dort werden Socket-Tutorials angeboten:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-237242-and-highlight-is-socket+tutorial.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-245210-and-start-is-0.html
-
Kann mir jemand sagen, wo der Fehler liegt?
#include <windows.h> #include <winsock.h> #include <stdlib.h> #include <stdio.h> int main() { WSADATA wsa; struct sockaddr_in addr; int rc; int s; int senden; char text[]={"Nachricht"}; struct sockaddr_in { short int sin_family; unsigned short int sin_port; struct in_addr sin_addr; unsigned char pad[8]; }; addr.sin_family = AF_INET; addr.sin_port = htons(399); addr.sin_addr.s_addr = inet_addr("127.0.0.1"); s = socket(AF_INET,SOCK_STREAM,0); //rc=connect(s,(SOCKADDR*)&addr,sizeof(SOCKADDR)); senden = send(s,text,strlen(text),0); system("PAUSE"); return 0; }Der Socket hat immer den Fehlerwert -1. Ich verstehe es nicht ganz.
-
WSAGetLastError(), ich wette, der Port ist belegt.