<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Problem mit Socket2]]></title><description><![CDATA[<p>Hi,<br />
im folgenden benutze ich C, anstatt C++, weils in der msdn so steht und weil ich testen wollte ob in C die gleichen fehler auftreten ;).</p>
<p>Ich hab mal die code beispiele fuer einen server und einen client aus der msdn genommen, funzt auch alles ganz gut. Blos beim Server bekomm ich den Compile/Link fehler:</p>
<pre><code>E:\Developing\Dev-Cpp\Projekte\Server\SerMain.cpp [Warning] converting of negative value `-0x000000001' to `SOCKET'
</code></pre>
<p>an der codestelle: 7</p>
<pre><code class="language-cpp">1: SOCKET AcceptSocket;
2:    
3:     while(1)
4:     {
5:             AcceptSocket = SOCKET_ERROR;
6:             while(AcceptSocket == SOCKET_ERROR)
7:                                AcceptSocket = accept(m_socket, 0, 0);
8:             cout &lt;&lt; &quot;Client Connected...&quot; &lt;&lt; endl;
9:             m_socket = AcceptSocket;
10:            break;
11:    }
</code></pre>
<p>Wenn ich die Zeile trotzdem Compile funzt es auch bis auf das dann beim client der hexwert, welcher im error des Compiler/Linker steht, ankommt (-1).</p>
<p>Dann wuerd ich gern noch wissen wie ich die gesendeten daten welche im form eines char arrays vorliegen auch als 'character' ausgeben kann und nicht die groesse in bytes?</p>
<pre><code class="language-cpp">int bytesSent;
    int bytesRecv = SOCKET_ERROR;
    char sendbuf[32] = &quot;Server: Sending Data.&quot;;
    char recvbuf[32] = &quot;&quot;;

    bytesRecv = recv(m_socket, recvbuf, 32, 0);
    printf( &quot;Bytes Recv: %ld\n&quot;, bytesRecv);

    bytesSent = send(m_socket, sendbuf, strlen(sendbuf), 0);
    printf( &quot;Bytes Sent: %ld\n&quot;, bytesSent );

    return 0;
</code></pre>
<p>mfg enA</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/106259/problem-mit-socket2</link><generator>RSS for Node</generator><lastBuildDate>Mon, 29 Jun 2026 23:52:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/106259.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 07 Apr 2005 13:47:35 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Socket2 on Thu, 07 Apr 2005 13:47:35 GMT]]></title><description><![CDATA[<p>Hi,<br />
im folgenden benutze ich C, anstatt C++, weils in der msdn so steht und weil ich testen wollte ob in C die gleichen fehler auftreten ;).</p>
<p>Ich hab mal die code beispiele fuer einen server und einen client aus der msdn genommen, funzt auch alles ganz gut. Blos beim Server bekomm ich den Compile/Link fehler:</p>
<pre><code>E:\Developing\Dev-Cpp\Projekte\Server\SerMain.cpp [Warning] converting of negative value `-0x000000001' to `SOCKET'
</code></pre>
<p>an der codestelle: 7</p>
<pre><code class="language-cpp">1: SOCKET AcceptSocket;
2:    
3:     while(1)
4:     {
5:             AcceptSocket = SOCKET_ERROR;
6:             while(AcceptSocket == SOCKET_ERROR)
7:                                AcceptSocket = accept(m_socket, 0, 0);
8:             cout &lt;&lt; &quot;Client Connected...&quot; &lt;&lt; endl;
9:             m_socket = AcceptSocket;
10:            break;
11:    }
</code></pre>
<p>Wenn ich die Zeile trotzdem Compile funzt es auch bis auf das dann beim client der hexwert, welcher im error des Compiler/Linker steht, ankommt (-1).</p>
<p>Dann wuerd ich gern noch wissen wie ich die gesendeten daten welche im form eines char arrays vorliegen auch als 'character' ausgeben kann und nicht die groesse in bytes?</p>
<pre><code class="language-cpp">int bytesSent;
    int bytesRecv = SOCKET_ERROR;
    char sendbuf[32] = &quot;Server: Sending Data.&quot;;
    char recvbuf[32] = &quot;&quot;;

    bytesRecv = recv(m_socket, recvbuf, 32, 0);
    printf( &quot;Bytes Recv: %ld\n&quot;, bytesRecv);

    bytesSent = send(m_socket, sendbuf, strlen(sendbuf), 0);
    printf( &quot;Bytes Sent: %ld\n&quot;, bytesSent );

    return 0;
</code></pre>
<p>mfg enA</p>
]]></description><link>https://www.c-plusplus.net/forum/post/762024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/762024</guid><dc:creator><![CDATA[enA]]></dc:creator><pubDate>Thu, 07 Apr 2005 13:47:35 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Socket2 on Thu, 07 Apr 2005 14:08:14 GMT]]></title><description><![CDATA[<p>Also ich hab mir ebn mal die winsock2.h angeschaut und festgestellt das SOCKET als u_int deklariert ist was dann wohl soviel wie unsigned int heisst und somit keine negativen werte annehmen kann.<br />
Wie loese ich nun das Problem bis auf das ich vielleicht noch ne variable anlege die signed ist?<br />
Wieso schreiben die das dann aber so in der msdn?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/762052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/762052</guid><dc:creator><![CDATA[enA]]></dc:creator><pubDate>Thu, 07 Apr 2005 14:08:14 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Socket2 on Fri, 08 Apr 2005 08:38:13 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile.php?mode=viewprofile&amp;u=403" rel="nofollow">HumeSikkins</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=15" rel="nofollow">C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum.php?f=4" rel="nofollow">WinAPI</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39405" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/762451</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/762451</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Fri, 08 Apr 2005 08:38:13 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Socket2 on Fri, 08 Apr 2005 09:14:47 GMT]]></title><description><![CDATA[<p>SOCKET_ERROR ist falsch, du musst INVALID_SOCKET nehmen!<br />
1 char ist sowieso 1 Byte groß, Umrechnung kannst du dir sparen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";D"
      alt="😉"
    /><br />
Ansonsten: AnzahlZeichen=AnzahlBytes/GrößeProZeichen<br />
quasi n=bytesRecv/sizeof(char)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/762480</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/762480</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Fri, 08 Apr 2005 09:14:47 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Socket2 on Tue, 12 Apr 2005 16:28:50 GMT]]></title><description><![CDATA[<p>Hallo,<br />
wie kann ich einen array deklarieren der an die Funktion inet_addr uebergeben werden kann? inet_addr erwartet einen const char* zb. inet_addr = (&quot;127.0.0.1&quot;). ich will diesen aber variabel halten bzw. vor dem verbinden eingeben koennen. mit char IP[] = {1, 2, 7, ., 0, ., 0, ., 1} funktioniert es zb nicht! Gibt es vielleicht noch eine andere Funktion?</p>
<p>mfg enA</p>
]]></description><link>https://www.c-plusplus.net/forum/post/764970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/764970</guid><dc:creator><![CDATA[enA]]></dc:creator><pubDate>Tue, 12 Apr 2005 16:28:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Socket2 on Tue, 12 Apr 2005 17:05:48 GMT]]></title><description><![CDATA[<p>gethostbyname:</p>
<p><a href="http://www.c-worker.ch/tuts/resolv.html" rel="nofollow">http://www.c-worker.ch/tuts/resolv.html</a></p>
<p>ganz gut erklärt, allerdings habe ich irgendwo mal gehört, dass es da wohl ne neuere Version von gibt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/765002</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/765002</guid><dc:creator><![CDATA[ItsNotYou]]></dc:creator><pubDate>Tue, 12 Apr 2005 17:05:48 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Socket2 on Tue, 12 Apr 2005 21:38:13 GMT]]></title><description><![CDATA[<p>Caste doch einfach deine als Char-Array zusammengebaute IP auf nen (const char*).<br />
Das const sagt eh nur aus, dass inet_addr() die zeichenkette, die du übergibst nicht verändern wird...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/765195</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/765195</guid><dc:creator><![CDATA[geeky]]></dc:creator><pubDate>Tue, 12 Apr 2005 21:38:13 GMT</pubDate></item></channel></rss>