<?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[[GELÖST] Mal wieder Probleme mit Header]]></title><description><![CDATA[<p>Hallo!<br />
Mal wieder bekomm ich es einfach nicht auf die Reihe und weiß nicht, was ich falsch mache. Ich habe einen Batzen Funktionen, den ich wieder in eine Headerdatei auslagern möchte und bekomme nun Fehlermeldungen beim Header, die ich nicht verstehe:</p>
<pre><code class="language-cpp">//vigenere.h
#ifndef VIGENERE_H_INCLUDED
#define VIGENERE_H_INCLUDED

#include &lt;string&gt;
#include &lt;vector&gt;

void cryptkey (string key, vector&lt;int&gt; &amp; intkey);   // Konvertiert Schlüssel in Zahlenfolge um Verschiebung zu erleichtern
// key: Schluessel, intkey: Vektor in dem der Schluessel als Zahlenfolge abgespeichert werden soll
void crypt( string sourcefile, string key, const string savefile = &quot;Cryptext.txt&quot;, bool decrypt = 0 );    // Chiffriert den Text
// sourcefile: Dateiname des Klartextes, key: Schluessel, savefile: Dateiname des Chiffrats (Default: Cryptext.txt)
// decrypt: andere Ausgabe beim Dechiffrieren
double friedmann (string &amp; text, char language = 'D');      // Schätzt Schlüssellänge nach Friedmann
// text: Chiffrat als String, language: Sprache des Textes (Default: 'D', deutsch)
void decrypt (string sourcefile, char language = 'D');
// sourcefile: Mit Vigenere verschluesselter Text, language: Sprache des Klartextes
void caesar( string &amp; text, size_t keylength);      // Zerlegt den Text in Streifen und verschiebt diese nach Ermittlung des 'E's
// text: Chiffrat als String (keine Leer- oder Satzzeichen erlaubt), keylength: Schluessellaenge
void kasiki(string &amp; text, size_t len, vector&lt;int&gt; &amp; distances);
// text: Chiffrat als String (keine Leer- oder Satzzeichen erlaubt), len: Laenge der gesuchten Zeichenketten
// distances: Vektor, der alle Abstände speichert und für eine automatische Wahl des Schluessels (optional) sortiert wird
int min(vector&lt;int&gt; &amp; sort) ;

#endif // VIGENERE_H_INCLUDED
</code></pre>
<pre><code class="language-cpp">//main.cpp
#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;fstream&gt;
#include &lt;vector&gt;
#include &lt;ctype.h&gt;      //  isalpha()
#include &lt;cstdlib&gt;       //  exit()
#include &quot;vigenere.h&quot;

int main()
{
    char ch;
    string filename, schluessel;

    do  {

        std::cout &lt;&lt; &quot;Chiffrieren (c) oder Dechiffrieren (d) (Ende mit 'e')? &quot;;
        std::cin &gt;&gt; ch;

        switch(ch)  {

            case 'c':
                std::cout &lt;&lt; &quot;\nKlartextfile: &quot;;
                std::cin &gt;&gt; filename;
                std::cout &lt;&lt; &quot;\nSchluesselwort (keine Ziffern oder Satzzeichen): &quot;;
                std::cin &gt;&gt; schluessel;
                crypt(filename, schluessel);
                break;

            case 'd':
                std::cout &lt;&lt; &quot;\nSchluesseltextfile: &quot;;
                std::cin &gt;&gt; filename;
                decrypt(filename);
                break;

            case 'e':
                break;

            default:
                std::cout &lt;&lt; &quot;Ungueltige Eingabe\n\n&quot;;
        }
    }while(ch != 'e');
    return 0;
}
</code></pre>
<p>Ich wusste jetzt nicht, ob die Funktionen an sich relevant sind - wollte nur den Rahmen erstmal nicht sprengen.<br />
Ich bekomme folgende Fehlermeldung im Header:<br />
&quot;error: variable or field 'cryptkey' declared void&quot; (Was?!) (8)<br />
&quot;error: 'string' was not declared in this scope&quot; (Ich habe doch String inkludiert?) (8)<br />
und &quot;error: expected primary expression before 'const' (10).</p>
<p>Danke danke mal wieder für eure Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/273982/gelöst-mal-wieder-probleme-mit-header</link><generator>RSS for Node</generator><lastBuildDate>Thu, 27 Aug 2026 20:35:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/273982.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 16 Sep 2010 18:24:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [GELÖST] Mal wieder Probleme mit Header on Fri, 17 Sep 2010 14:19:16 GMT]]></title><description><![CDATA[<p>Hallo!<br />
Mal wieder bekomm ich es einfach nicht auf die Reihe und weiß nicht, was ich falsch mache. Ich habe einen Batzen Funktionen, den ich wieder in eine Headerdatei auslagern möchte und bekomme nun Fehlermeldungen beim Header, die ich nicht verstehe:</p>
<pre><code class="language-cpp">//vigenere.h
#ifndef VIGENERE_H_INCLUDED
#define VIGENERE_H_INCLUDED

#include &lt;string&gt;
#include &lt;vector&gt;

void cryptkey (string key, vector&lt;int&gt; &amp; intkey);   // Konvertiert Schlüssel in Zahlenfolge um Verschiebung zu erleichtern
// key: Schluessel, intkey: Vektor in dem der Schluessel als Zahlenfolge abgespeichert werden soll
void crypt( string sourcefile, string key, const string savefile = &quot;Cryptext.txt&quot;, bool decrypt = 0 );    // Chiffriert den Text
// sourcefile: Dateiname des Klartextes, key: Schluessel, savefile: Dateiname des Chiffrats (Default: Cryptext.txt)
// decrypt: andere Ausgabe beim Dechiffrieren
double friedmann (string &amp; text, char language = 'D');      // Schätzt Schlüssellänge nach Friedmann
// text: Chiffrat als String, language: Sprache des Textes (Default: 'D', deutsch)
void decrypt (string sourcefile, char language = 'D');
// sourcefile: Mit Vigenere verschluesselter Text, language: Sprache des Klartextes
void caesar( string &amp; text, size_t keylength);      // Zerlegt den Text in Streifen und verschiebt diese nach Ermittlung des 'E's
// text: Chiffrat als String (keine Leer- oder Satzzeichen erlaubt), keylength: Schluessellaenge
void kasiki(string &amp; text, size_t len, vector&lt;int&gt; &amp; distances);
// text: Chiffrat als String (keine Leer- oder Satzzeichen erlaubt), len: Laenge der gesuchten Zeichenketten
// distances: Vektor, der alle Abstände speichert und für eine automatische Wahl des Schluessels (optional) sortiert wird
int min(vector&lt;int&gt; &amp; sort) ;

#endif // VIGENERE_H_INCLUDED
</code></pre>
<pre><code class="language-cpp">//main.cpp
#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;fstream&gt;
#include &lt;vector&gt;
#include &lt;ctype.h&gt;      //  isalpha()
#include &lt;cstdlib&gt;       //  exit()
#include &quot;vigenere.h&quot;

int main()
{
    char ch;
    string filename, schluessel;

    do  {

        std::cout &lt;&lt; &quot;Chiffrieren (c) oder Dechiffrieren (d) (Ende mit 'e')? &quot;;
        std::cin &gt;&gt; ch;

        switch(ch)  {

            case 'c':
                std::cout &lt;&lt; &quot;\nKlartextfile: &quot;;
                std::cin &gt;&gt; filename;
                std::cout &lt;&lt; &quot;\nSchluesselwort (keine Ziffern oder Satzzeichen): &quot;;
                std::cin &gt;&gt; schluessel;
                crypt(filename, schluessel);
                break;

            case 'd':
                std::cout &lt;&lt; &quot;\nSchluesseltextfile: &quot;;
                std::cin &gt;&gt; filename;
                decrypt(filename);
                break;

            case 'e':
                break;

            default:
                std::cout &lt;&lt; &quot;Ungueltige Eingabe\n\n&quot;;
        }
    }while(ch != 'e');
    return 0;
}
</code></pre>
<p>Ich wusste jetzt nicht, ob die Funktionen an sich relevant sind - wollte nur den Rahmen erstmal nicht sprengen.<br />
Ich bekomme folgende Fehlermeldung im Header:<br />
&quot;error: variable or field 'cryptkey' declared void&quot; (Was?!) (8)<br />
&quot;error: 'string' was not declared in this scope&quot; (Ich habe doch String inkludiert?) (8)<br />
und &quot;error: expected primary expression before 'const' (10).</p>
<p>Danke danke mal wieder für eure Hilfe!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1953535</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1953535</guid><dc:creator><![CDATA[Tonikum]]></dc:creator><pubDate>Fri, 17 Sep 2010 14:19:16 GMT</pubDate></item><item><title><![CDATA[Reply to [GELÖST] Mal wieder Probleme mit Header on Thu, 16 Sep 2010 18:54:39 GMT]]></title><description><![CDATA[<p>Also der String Fehler ist sicher davon, dass du den Namesraum nicht angegeben hast (und mach da jetzt kein using namespace hin, sondern qualifiziere explizit mit std:: !).</p>
<p>Für die anderen beiden Fehler musst du genauere Infos geben (Zeile).</p>
<p>Möglicherweise gibt es Probleme mit den Namen &quot;min&quot;, weil das ein Konflikt geben kann mit einem Makro, dass min heisst. Benenn die Funktion ggf. mal um.</p>
<p>btw:<br />
Wo sind die Implementierungen der Funktionen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1953542</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1953542</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 16 Sep 2010 18:54:39 GMT</pubDate></item><item><title><![CDATA[Reply to [GELÖST] Mal wieder Probleme mit Header on Fri, 17 Sep 2010 14:18:44 GMT]]></title><description><![CDATA[<p>Hi drakon. danke für die Antwort. Die Zeilen habe ich nun oben mit angefügt.<br />
Wo soll ich das std:: anfügen?</p>
<p>Hier meine Funktionen:</p>
<pre><code class="language-cpp">//vigenere.cpp
[der übersicht wegen gelöscht - tat nichts zur Sache.]
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1953546</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1953546</guid><dc:creator><![CDATA[Tonikum]]></dc:creator><pubDate>Fri, 17 Sep 2010 14:18:44 GMT</pubDate></item><item><title><![CDATA[Reply to [GELÖST] Mal wieder Probleme mit Header on Thu, 16 Sep 2010 22:30:48 GMT]]></title><description><![CDATA[<p>Tonikum schrieb:</p>
<blockquote>
<p>Hi drakon. danke für die Antwort. Die Zeilen habe ich nun oben mit angefügt.<br />
Wo soll ich das std:: anfügen?</p>
</blockquote>
<pre><code class="language-cpp">void cryptkey (std::string key, std::vector&lt;int&gt; &amp; intkey);
</code></pre>
<p>Das sollte eigentlich alle Probleme beheben (wenn du das für alle string und vector so machst).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1953586</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1953586</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 16 Sep 2010 22:30:48 GMT</pubDate></item><item><title><![CDATA[Reply to [GELÖST] Mal wieder Probleme mit Header on Fri, 17 Sep 2010 14:16:49 GMT]]></title><description><![CDATA[<p>Ah super, drakon!<br />
Dankeschön, jetzt klappt alles.<br />
Ich wusste nicht, wovor ich das std:: alles machen musste... und die Fehlermeldungen wusste ich nicht zun interpretieren.<br />
Danke!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1953880</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1953880</guid><dc:creator><![CDATA[Tonikum]]></dc:creator><pubDate>Fri, 17 Sep 2010 14:16:49 GMT</pubDate></item><item><title><![CDATA[Reply to [GELÖST] Mal wieder Probleme mit Header on Fri, 17 Sep 2010 14:20:10 GMT]]></title><description><![CDATA[<p>Ja. Die Fehlermeldunge ist nicht so eindeutig.</p>
<p>Ist dir jetzt klar, wofür das <code>std::</code> da ist und wann du es hinschreiben musst?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1953885</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1953885</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Fri, 17 Sep 2010 14:20:10 GMT</pubDate></item></channel></rss>