Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Interrupt

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 ]
000
14.11.2006, 13:10 Uhr
Trivalik



Ich wollt nur eine Funktion schreiben die direkt ein Zeichen bekommt ohne \n zu drücken, quasi eine ungepufferte Eingabe. Somit hab ich im Internet folgendes gefunden:


C++:
#include <iostream>
using namespace std;

void lgg(char*);

main()
{
        char* car;
        cout<<"Immetti un carattere: ";
        lgg(car);
        cout<<car<<endl;
        return 0;
}

void lgg(char* c)
{
        __asm__("xor %%eax,%%eax\
                         int $0x16\
                         xor %%ah,%%ah"

                         :"=a"(c)
                         ::"%eax");
}



Mir ist klar was das macht und machen soll, nur funktioniert das nicht.

Kann es sein das der Interupt nicht geht unter Linux und Windows?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.11.2006, 14:26 Uhr
Blubber2063



Natürlich nicht, Interrupt Handling ist Kernel Sache, sonst könntest du die Prozesswechsel unterbinden und das ist nur ein Grund warum man das mit gutem Grund als User nicht darf.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
14.11.2006, 14:48 Uhr
BoBtheREapER
kein job für nen BoB


für so etwas gibt es auch einfach getch()
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.11.2006, 15:34 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


und für Linux schaust du hier
--
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
004
14.11.2006, 16:50 Uhr
BoBtheREapER
kein job für nen BoB


wobei es mich wundern würde wenn jemand der sich mit assembler auskennt kein getch() kennt
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.11.2006, 22:49 Uhr
Blubber2063



Dass muss nicht ungewöhnlich sein, nicht jeder der Assembler gelernt hat kann C.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
15.11.2006, 13:15 Uhr
Trivalik



Naja, C kann ich schon. Nur das mit den Interrupten war ich mir nicht sicher.

Gibt es eine möglichkeit den Interupt per Funktion oder API zu machen. Oder sogar plattform unabhängig.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
15.11.2006, 13:20 Uhr
ao

(Operator)


Hausaufgabe für Trivialik:

Lies noch einmal die Beiträge 001 bis 003 und überlege dir, warum die Antwort nur nein sein kann.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
15.11.2006, 17:12 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


kernelsache ... *hust*
--
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
009
15.11.2006, 20:04 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



Zitat von Trivalik:
Oder sogar plattform unabhängig.

asm und platform unabhängig???? ... *hust* *hust*
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ 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: