<?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[char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen]]></title><description><![CDATA[<p>hallo,</p>
<p>gibt es bereits eine funktion im c++ sprachumfang die eine per programmparameter(char** argv) übergebene ip-adresse validiert?</p>
<p>wenn nein, wie am besten lösen?</p>
<p>grüsse grizzel</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/211916/char-argv-gt-ip-adresse-gt-prüfen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 14 Oct 2026 13:19:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/211916.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 29 Apr 2008 08:15:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 08:15:20 GMT]]></title><description><![CDATA[<p>hallo,</p>
<p>gibt es bereits eine funktion im c++ sprachumfang die eine per programmparameter(char** argv) übergebene ip-adresse validiert?</p>
<p>wenn nein, wie am besten lösen?</p>
<p>grüsse grizzel</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500269</guid><dc:creator><![CDATA[grizzel]]></dc:creator><pubDate>Tue, 29 Apr 2008 08:15:20 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 08:35:49 GMT]]></title><description><![CDATA[<p>ip adressen haben recht wenig mit dem c++ standard zu tun.</p>
<p>also wenn du wirklich rausbekommen willst, ob ne ip existiert</p>
<p>Es gibt aber ne menge erweiterungen / API's vom BS die sich damit beschaeftigen, auch par tolle libs dazu .....<br />
Also c++ wird dir da gar ned helfen, aber Dein BS vielleicht, bzw deren API's (WinAPI, Posix, SystemV).<br />
Frameworks die das auf eine einheitliche Ebene hieven, waeren wxWidgets, QT ... und noch paar mehr.</p>
<p>Da wir natuerlich ned hellsehen koennen, was du genau benutzt ...</p>
<p>willst nur checken, ob das ding ne ip sein könnte ....<br />
also immer 1-3ziffern, punkt, 1-3ziffern, punkt, 1-3ziffern, punkt, 1-3ziffern ...<br />
dann helfen dir vielleicht regular expressions weiter ... auch ned im c++ standard, aber in diversen bibs unterstuetzt ....</p>
<p>Ansonsten, handarbeit <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":-)"
      alt="🙂"
    /></p>
<p>Ciao ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500288</guid><dc:creator><![CDATA[RHBaum]]></dc:creator><pubDate>Tue, 29 Apr 2008 08:35:49 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 09:07:26 GMT]]></title><description><![CDATA[<blockquote>
<p>willst nur checken, ob das ding ne ip sein könnte ....<br />
also immer 1-3ziffern, punkt, 1-3ziffern, punkt, 1-3ziffern, punkt, 1-3ziffern ...</p>
</blockquote>
<p>genau das will ich <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=";)"
      alt="😉"
    /></p>
<p>es scheint ich muss hand anlegen <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=";)"
      alt="😉"
    /></p>
<p>c++ mit g++ auf linux</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500303</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500303</guid><dc:creator><![CDATA[grizzel]]></dc:creator><pubDate>Tue, 29 Apr 2008 09:07:26 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 09:10:15 GMT]]></title><description><![CDATA[<p>Du könntest das recht simpel mit boost::regex oder Poco::RegEx lösen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500305</guid><dc:creator><![CDATA[Airdamn]]></dc:creator><pubDate>Tue, 29 Apr 2008 09:10:15 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 09:12:39 GMT]]></title><description><![CDATA[<p>Das geht auch mit Streams oder gar mit sscanf ziemlich simpel. <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=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500308</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500308</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Tue, 29 Apr 2008 09:12:39 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 09:13:06 GMT]]></title><description><![CDATA[<p>Das geht mit der Funktion inet_addr.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500309</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500309</guid><dc:creator><![CDATA[0000000]]></dc:creator><pubDate>Tue, 29 Apr 2008 09:13:06 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 09:15:57 GMT]]></title><description><![CDATA[<p>Ach sorry, ist wahrscheinlich doch nicht was du suchst, da die Funktion mehrere Formen akzeptiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500311</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500311</guid><dc:creator><![CDATA[0000000]]></dc:creator><pubDate>Tue, 29 Apr 2008 09:15:57 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 12:58:00 GMT]]></title><description><![CDATA[<p>ich versuche mit &lt;regex.h&gt; und regexec() regcomp() die ip zu validieren.</p>
<pre><code class="language-cpp">int isIp(char* ip)
{
	int result;
	regex_t reg;
	if (regcomp(&amp;reg,&quot;\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b&quot;,REG_EXTENDED|REG_NOSUB)!=0) 
	{
		return -1;
	}
		result = regexec(&amp;reg, ip, 0, 0, 0);
		regfree(&amp;reg);
		return result;
}
</code></pre>
<p>compiler ausgabe:</p>
<blockquote>
<p>g++ -Wall -c client.cpp -o peer_01.o<br />
client.cpp: In function 'int isIp(char*)':<br />
client.cpp:28: error: unknown escape sequence '\.'<br />
client.cpp:28: error: unknown escape sequence '\.'<br />
client.cpp:28: error: unknown escape sequence '\.</p>
</blockquote>
<p>wieso mag er das \. nicht??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500511</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500511</guid><dc:creator><![CDATA[grizzel]]></dc:creator><pubDate>Tue, 29 Apr 2008 12:58:00 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 13:50:15 GMT]]></title><description><![CDATA[<p>grizzel schrieb:</p>
<blockquote>
<p>...<br />
wieso mag er das \. nicht??</p>
</blockquote>
<p>Was soll denn '\.' Deiner Meinung nach sein ?</p>
<p>Merke: Ein einzelnes \ kennzeichnet nur ein &quot;Achtung, jetzt kommt ein Sonderzeichen&quot; (= &quot;escape character&quot;, der eine &quot;escape sequence&quot; einleitet) ... und davon kennt der compiler nur ein paar (u.a. das b, das Du ganz am Anfang verwendest -&gt; '\b'; aber eben kein '\.'.<br />
Beide zusammen bilden nur EIN Zeichen.<br />
Wenn man das Zeichen \ darstellen will, macht man das über '\' (= &quot;Achtung: Hier soll ein backslash stehen&quot;).</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500558</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500558</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Tue, 29 Apr 2008 13:50:15 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 13:55:16 GMT]]></title><description><![CDATA[<p>\.<br />
soll meiner meinung nach sagen: ACHTUNG jetzt kommt ein . und nicht das sonderzeichen .</p>
<p>???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500561</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500561</guid><dc:creator><![CDATA[grizzel]]></dc:creator><pubDate>Tue, 29 Apr 2008 13:55:16 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 14:08:12 GMT]]></title><description><![CDATA[<p>grizzel schrieb:</p>
<blockquote>
<p>\.<br />
soll meiner meinung nach sagen: ACHTUNG jetzt kommt ein . und nicht das sonderzeichen .</p>
</blockquote>
<p>Was den Regulären Ausdruck angeht hast du schon Recht, es geht hier aber um C++. Um in einem C/C++-String ein '\' zu schreiben, muß im Quelltext '\' stehen. Dementsprechend mußt du hier '\.' schreiben. Der erste Backslash ist für den Compiler, der zweite für den RegEx. Etwas unübersichtlich, aber wenn man drüber nachdenkt ergibt das schon Sinn <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500574</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500574</guid><dc:creator><![CDATA[dooooomi]]></dc:creator><pubDate>Tue, 29 Apr 2008 14:08:12 GMT</pubDate></item><item><title><![CDATA[Reply to char** argv -&amp;gt; ip-adresse -&amp;gt; prüfen on Tue, 29 Apr 2008 14:19:13 GMT]]></title><description><![CDATA[<p>hab diesen regulären ausdruck gebaut um ip adressen zu validieren:</p>
<blockquote>
<p>^((2[0-5][0-5]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(2[0-5][0-5]|1[0-9][0-9]|[1-9][0-9]|[0-9])$</p>
</blockquote>
<p>mögliche adressen: 0.0.0.0 - 255.255.255.255</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1500589</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1500589</guid><dc:creator><![CDATA[grizzel]]></dc:creator><pubDate>Tue, 29 Apr 2008 14:19:13 GMT</pubDate></item></channel></rss>