<?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 Varbiablenwert]]></title><description><![CDATA[<p>Hey,</p>
<p>ich habe ein kleines Programmierproblem und ich hoffe ihr könnt mir helfen:<br />
Ich schreibe eine Socketanwendung in Verindung mit OpenCV.</p>
<p>Code:</p>
<pre><code>void process(void* img) {

  IplImage* image = reinterpret_cast&lt;IplImage*&gt;(img);
  if( (bild = fopen( (const char *)image,&quot;rb&quot; )) != NULL ){
              while(!feof(bild))
...
</code></pre>
<p>Wenn ich mit Breakpoints arbeite hat an der stelle &quot;IplImage * image&quot; image den Wert: Ox0032cfe0 {nSize = 112 ID = 0 nChannels= 3 ...}</p>
<p>und an der &quot;Bild = ...&quot; Stelle den selben Wert. Der ist doch != Null, oder?<br />
Also wieso geht er nicht in die Schleife.</p>
<p>Danke<br />
Elli</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/134178/problem-mit-varbiablenwert</link><generator>RSS for Node</generator><lastBuildDate>Fri, 28 Aug 2026 08:35:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/134178.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 24 Jan 2006 10:10:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 10:10:57 GMT]]></title><description><![CDATA[<p>Hey,</p>
<p>ich habe ein kleines Programmierproblem und ich hoffe ihr könnt mir helfen:<br />
Ich schreibe eine Socketanwendung in Verindung mit OpenCV.</p>
<p>Code:</p>
<pre><code>void process(void* img) {

  IplImage* image = reinterpret_cast&lt;IplImage*&gt;(img);
  if( (bild = fopen( (const char *)image,&quot;rb&quot; )) != NULL ){
              while(!feof(bild))
...
</code></pre>
<p>Wenn ich mit Breakpoints arbeite hat an der stelle &quot;IplImage * image&quot; image den Wert: Ox0032cfe0 {nSize = 112 ID = 0 nChannels= 3 ...}</p>
<p>und an der &quot;Bild = ...&quot; Stelle den selben Wert. Der ist doch != Null, oder?<br />
Also wieso geht er nicht in die Schleife.</p>
<p>Danke<br />
Elli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/974745</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974745</guid><dc:creator><![CDATA[elli!]]></dc:creator><pubDate>Tue, 24 Jan 2006 10:10:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 10:15:56 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">if( (bild = fopen( (const char *)image,&quot;rb&quot; )) != NULL )
  ...
</code></pre>
<p>zerlegen wir das mal:</p>
<pre><code class="language-cpp">bild=fopen((const char*)image,&quot;rb&quot;);
if(bild!=NULL)
  ...
</code></pre>
<p>Du interpretierst den Speicherbereich hinter image (nSize,ID,nChannels) als Dateiname (char*) - da kommt nur Datenmüll heraus, mit dem fopen() nichts anfangen kann, also liefert es NULL (=Fehler aufgetreten) zurück.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/974748</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974748</guid><dc:creator><![CDATA[CStoll (off)]]></dc:creator><pubDate>Tue, 24 Jan 2006 10:15:56 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 10:17:05 GMT]]></title><description><![CDATA[<p>Und das bedeutet? Wie kann ich das lösen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/974751</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974751</guid><dc:creator><![CDATA[elli!]]></dc:creator><pubDate>Tue, 24 Jan 2006 10:17:05 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 10:20:41 GMT]]></title><description><![CDATA[<p>Das bedeutet, daß du aus deiner Image-Klasse nicht zurückkommst zum Dateinamen.</p>
<p>(für weitere Hinweise ist a) die Definition von IplImage und b) dein Ziel hilfreich)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/974753</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974753</guid><dc:creator><![CDATA[CStoll (off)]]></dc:creator><pubDate>Tue, 24 Jan 2006 10:20:41 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 11:52:01 GMT]]></title><description><![CDATA[<p>Da OpenCV eine in AnsiC geschriebene Bibliothek ist, wird IplImage wohl keine Membervariablen haben. <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="😉"
    /><br />
Hier muss einfach bei der Funktion process der Dateiname mit übergeben werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/974757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974757</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 24 Jan 2006 11:52:01 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 10:43:47 GMT]]></title><description><![CDATA[<p>Den Dateinamen habe ich in einer anderen Funktion benutzt, wo das Bild ddargestellt wird.... Wie kann ich den jetz übergeben?</p>
<p>Filename = Name:</p>
<pre><code>class Imageprocessor
{
  IplImage* img; //Bildpointer deklarieren

public:
  Imageprocessor (CString filename, bool display=true){
  img = cvvLoadImage( filename ); // load image
      if (display) {
        // create a window
        cvvNamedWindow( filename, 1 );
        // display the image on window
        cvvShowImage( filename, img ); 
      }
    }

  void execute();
  ~Imageprocessor() {
      cvReleaseImage( &amp;img );
    };
};

extern Imageprocessor *proc;
</code></pre>
<p>Dann wird execute im cpp File aufgerufen:</p>
<pre><code>void Imageprocessor ::execute(){
  process(img, filename);
}
</code></pre>
<p>und schlußendlich wird im selben cpp File process definiert:</p>
<pre><code>Imageprocessor *proc = 0;
void process(void* img, filename) {

  IplImage* image = reinterpret_cast&lt;IplImage*&gt;(img);
  if( (bild = fopen( (const char *)image,&quot;rb&quot; )) != NULL ){
</code></pre>
<p>wie übergebe ich denn den Filename?</p>
<p>Danke<br />
Eva</p>
]]></description><link>https://www.c-plusplus.net/forum/post/974764</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974764</guid><dc:creator><![CDATA[elli!]]></dc:creator><pubDate>Tue, 24 Jan 2006 10:43:47 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 10:56:57 GMT]]></title><description><![CDATA[<p>Du mußt dir den Dateinamen merken und mit übergeben:</p>
<pre><code class="language-cpp">class Imageprocessor
{
  IplImage* img;
  CString fname;//neu
public:
  Imageprocessor (CString filename, bool display=true)
  {
    img = cvvLoadImage( filename );
    fname=filename;//neu
    ...
  }
  void execute()
  { process(img,fname); }
}

void process(void* img,const CString&amp; name)
{
  if( (bild=fopen(name,&quot;rb&quot;)) != NULL)
    ...
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/974770</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974770</guid><dc:creator><![CDATA[CStoll (off)]]></dc:creator><pubDate>Tue, 24 Jan 2006 10:56:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Varbiablenwert on Tue, 24 Jan 2006 11:55:19 GMT]]></title><description><![CDATA[<p>Super... vielen Dank. Es funktioniert...... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/974819</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/974819</guid><dc:creator><![CDATA[elli!]]></dc:creator><pubDate>Tue, 24 Jan 2006 11:55:19 GMT</pubDate></item></channel></rss>