Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Ich verstehe es einfach nicht...

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] [ 2 ] > 3 < [ 4 ] [ 5 ]
020
28.08.2006, 12:57 Uhr
Yadgar



High!


Zitat von ~Blubber2063:
lern Geduld


Ich glaube, dass mir zur Geduld inwzischen die Zeit fehlt! Ich bin jetzt 37 und habe seit meinem Abitur nichts mehr richtig auf die Reihe bekommen, die Anforderungen der Arbeitswelt werden immer schneller immer härter und ich kann mir eine so flache Lernkurve, wie ich sie anscheinend habe, nicht leisten, wenn ich jemals aus dem Hartz-IV-Dreck rauskommen will!

Oder sollte ich mich nicht doch besser gleich vor den nächsten Zug schmeißen? Oder überzeugend durchknallen, um den Rest meines Lebens mit Haldol zugedröhnt auf einer psychiatrischen Langzeitstation zu verbringen - wenn ich eh keine Chance in der heutigen Welt habe?

Bis bald im Khyberspace!

Yadgar
--
Flagmaker - ein Programmier-Blog
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
021
28.08.2006, 13:02 Uhr
~Blubber2063
Gast


Jetzt reiss dich mal zusammen, das ist alles eine Frage des willens und der einsatzbereitschaft.

Das mit Linux kann überhaupt nicht sein, der root kann immer alle Dateien verändern ausführen etc. Es kann nur sein das, warum auch immer dein Programm keine X-Rechte besitzt, solltest du mal checken. Ansonsten halt dich auch nicht unbedingt an einer bestimmten IDE fest, ich arbeite derzeit eigentlich auch nur mit compiler. Das einzige was wirklich nützlich an einer IDE wie visual studio ist, ist der relativ gute Text Editor, denn der kann autovervollständigung für Typen, spart Zeit und der relativ gute Debugger. Aber du kannst dir zu deinem mingw auch den gdb runterladen und damit debuggen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
022
28.08.2006, 13:09 Uhr
Yadgar



High!


Zitat von ~Blubber2063:

Das mit Linux kann überhaupt nicht sein, der root kann immer alle Dateien verändern ausführen etc. Es kann nur sein das, warum auch immer dein Programm keine X-Rechte besitzt, solltest du mal checken.


Wie kann ich das denn checken?

Bis bald im Khyberspace!

Yadgar
--
Flagmaker - ein Programmier-Blog
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
023
28.08.2006, 13:20 Uhr
~Blubber2063
Gast


Ist das dein Ernst ? Naja für den fall das:

geh in das Verzeichnis in dem deine Programm liegt, rufe ls -la auf, und schau ob bei deinem Programm das "x" steht. Steht dort ein "-" kannst du es nicht ausführen, ist dem so
chmod +x dateiname und du solltest es ausführen können.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
024
28.08.2006, 13:49 Uhr
ao

(Operator)


So, jetzt aber. Der Fehler liegt hier:

C++:
    input.open(name.c_str(), ios_base::in | ios_base::binary);


Du liest das File bisher ohne ios_base::binary, d.h. als Textfile, und da ist nun mal beim ersten EOF-Zeichen Feierabend. So wie oben kommen exakt 1403 x 1409 Pixel.

Außerdem hab ich mal versucht, ein bisschen Struktur da reinzubringen und vor allem diese get-character-Orgie in was Lesbares zu verwandeln, und voilà, nach ner halben Stunde sah die Einleseroutine wie folgt aus:

C++:
#pragma pack (push)
#pragma pack (1)

struct tgaheader // abgeschrieben von Wikipedia, siehe Link in Posting 006.
{
    unsigned char imageIdLength; // length of image id. 0 -> no image id
    unsigned char palette;        // 0 = no, 1 = yes
    unsigned char imageType;    // 0 = no image
                                // 1 = palette uncompressed
                                // 2 = RGB 24 bit uncompressed
                                // 3 = monochrome uncompressed
                                // 9 = palette rlc
                                // 10 = RGB rlc
                                // 11 = monochrome rlc

    unsigned short startOfPalette;
    unsigned short lengthOfPalette;
    unsigned char paletteEntrySize;
    unsigned short originX;
    unsigned short originY;
    unsigned short width;
    unsigned short height;
    unsigned char bitsPerPixel;
    unsigned char imageAttribute;
};

struct pix24
{
    unsigned char r;
    unsigned char g;
    unsigned char b;
};


#pragma pack (pop)

int main()
{
    string name;
    ifstream input;

    // der Einfachheit halber mal konstant vorgegeben.
    name = "e:\\ao\\cpp\\yip\\count2.tga";
//      cout << "Bitte geben Sie den Namen der zu ladenden Grafikdatei ein: ";
//      cin >> name;
      
    // Datei öffnen
    input.open(name.c_str(), ios_base::in | ios_base::binary);

    // Header einlesen
    tgaheader header;
    input.read ((char *) &header, sizeof (header));

    // Image-Objekt erzeugen
    Image picture(header.width, header.height);

    int x = 0;
    int y = 0;

    // dies ist DER Pixel-Zähler, einen anderen gibt es nicht!
    int count = 0;

    while (!input.eof ())
    {
        // Daten für ein Pixel einlesen
        pix24 pix;
        input.read ((char *) &pix, sizeof (pix));

        // Hochzählen und Position des Pixels im Bild berechnen
        count++;
        x = count % header.width;
        y = count / header.width;

        // Pixel im Bild setzen
        picture.setPixel (x, y, pix.r, pix.g, pix.b);
    }

    // Datei schließen, wir brauchen sie nicht mehr.
    input.close ();

    // Fertig. Ab jetzt ausgeben.

    cout << count << " Pixel eingelesen!" << endl;
    cout << "Daten im Objekt \"Image\": " << endl;
    picture.pDisplay();

            // und so weiter

            return 0
}


Und jetzt vergiss mal deinen Frust, geh ne Stunde radfahren, das Wetter ist grad gut, und dann fang von vorne an.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
025
28.08.2006, 13:53 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)



Zitat von ao:
Und jetzt vergiss mal deinen Frust, geh ne Stunde radfahren, das Wetter ist grad gut, und dann fang von vorne an.


Na ja,wirklich gut ist es in der Nähe von KA nicht
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
026
28.08.2006, 13:54 Uhr
ao

(Operator)



Zitat von J-jayz-Z:
Na ja,wirklich gut ist es in der Nähe von KA nicht

Hier (AC) schon
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
027
28.08.2006, 14:45 Uhr
Yadgar




Zitat von ~Blubber2063:
Ist das dein Ernst ?



Da habe ich dich wohl falsch verstanden... ich dachte, du sprächest von irgendeiner Einstellungstabelle für den gcc, wo die Zugriffsrechte für die erzeugten Programme festgelegt sind...


[/quote]
geh in das Verzeichnis in dem deine Programm liegt, rufe ls -la auf, und schau ob bei deinem Programm das "x" steht. Steht dort ein "-" kannst du es nicht ausführen, ist dem so
chmod +x dateiname und du solltest es ausführen können.[/quote]

Also: da steht -rwxrwxr-x - x kommt dreimal vor, wenn ich meine (rudimentären) Linux-Shellskript-Kenntnisse zusammenkratze, heißt das, das grundsätzlich jeder das Programm ausführen kann. Trotzdem funktioniert es nicht!

Bis bald im Khyberspace!

Yadgar
--
Flagmaker - ein Programmier-Blog
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
028
28.08.2006, 14:54 Uhr
~Blubber2063
Gast


Also was stellst du denn unter Linux genau für Schritte an, wenn du dort ein Programm schreibst.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
029
28.08.2006, 15:39 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


In FM ist das Wetter auch Scheisse. Kann aber auch daran liegen das es in FM allgemein Scheisse ist
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] > 3 < [ 4 ] [ 5 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: