Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme.

VC++: Verwendung des Befehls "snprintf"?

Diskussion: VC++: Verwendung des Befehls "snprintf"? im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hi, also ich wollte in "VC++" den Befehl "snprintf" verwenden, um "formatiert" die Zeichen eines Strings Zeichen für Zeichen ...

Antwort
Alt 16.02.04, 01:32   #1 (permalink)
Rushjo
Guest
 
Likes:
Standard VC++: Verwendung des Befehls "snprintf"?

Anzeige

Hi,

also ich wollte in "VC++" den Befehl "snprintf" verwenden, um "formatiert"
die Zeichen eines Strings Zeichen für Zeichen in einen anderen String einzulesen.
Das geht in "VC+*" ja mit "snprintf", daher habe ich mir "snprintf" als "_snprintf"
definiert.

Code:
#define snprintf _snprintf

......

	snprintf(string2, "%x", string1[a]);

......
Als Fehlermeldung bekomme ich folgende Antwort von "VC++":

Zitat:
Fehlermeldung von "VC++"
'_snprintf' : Konvertierung des Parameters 1 von 'char' in 'char *' nicht moeglich
Nur damit kann ich wenig anfangen. Kann mir einer helfen?

Thx & MfG Rushjo
  Mit Zitat antworten
Alt 16.02.04, 16:06   #2 (permalink)
 
Registriert seit: 01.11.03
lagalopex Leistung: Facit NTK
Likes: 0
Standard

IMHO ist snprintf folgendermaßen definiert:
int snprintf(char *str, size_t size, const char *format, ...);

Wie wurden eigentlich string1 und string2 definiert?
lagalopex ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 16.02.04, 16:16   #3 (permalink)
Rushjo
Guest
 
Likes:
Standard

@lagalopex

Sie wurden definiert als:

Code:
char string1, string2;
Warum die Frage?

Es geht um Windows! Dort gibt es soweit ich weiss kein "snprintf", sondern
"_snprintf".

MfG Rushjo
  Mit Zitat antworten
Alt 16.02.04, 16:39   #4 (permalink)
 
Registriert seit: 01.11.03
lagalopex Leistung: Facit NTK
Likes: 0
Standard

snprintf will als ersten Parameter einen Zeiger auf einen String.
char string1; //<- ist kein String
char string2[10]; //<- ist ein String der Länge 10

Also musst du:
:
char string2[10];
:
snprintf(string2,sizeof(string2), "%x", string1[a]);
:
schreiben.

PS: snprintf ist bloß eine erweiterte Form von sprintf. Man kann nämlich eine Länge mit angeben, dadurch können Buffer-Overflows vermieden werden...

btw: "Es geht um Windows! Dort gibt es soweit ich weiss kein 'snprintf', sondern
'_snprintf'. "
Windows != MSVC++
es geht meh oder minder um den Compiler/Linker/Header/...
lagalopex ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Software Home » Code Kitchen » VC++: Verwendung des Befehls "snprintf"?
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Internetverbindung bricht ab bei Verwendung des Telefons LeBkUcHeN85 Internet Allgemein 4 23.05.09 13:19
verwendung der nicht zugewiesenen variabel c Schnauf Code Kitchen 8 17.10.08 14:47
Laptop Verwendung? Sven Hardware Probleme 5 17.12.06 17:27
Kleine Befehls Übersicht für C++ Vlox (In)security allgemein 10 06.03.05 18:41
Sicherheitsloch bei Verwendung von Outlook mit Word Tec News & Ankündigungen 0 29.04.02 16:03


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61