Thema: C++ IntToStr zu WCHAR

Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#20

AW: IntToStr zu WCHAR

  Alt 5. Aug 2017, 12:43
Zu Deiner Lösung sag ich jetzt nix.........

Code:
#include <stdio.h>

wchar_t Buffer[100];
int err = _snwprintf_s(Buffer, 100, 99, L"%.3f x %.3f y , %6.3f FPS", aMediaProperty.Video_Width, aMediaProperty.Video_Height, aMediaProperty.Video_FPS);
if (err <0){
 // Buffer to small fix it
}
else
SetWindowText(hLblVideoInfo, Buffer);
Es wäre schön wenn du etwas gesagt hättest
Gut dann ich.. selbst erarbeitet. (Stolz)

Warum soll ich die MSVC.. hehehhe (VCL) verwenden wenn es nicht nötig ist?
Warum künstlich den Code um 250 KB und hoch vergrößern wenn es auch statisch zu lösen ist.
Ok ist nicht schön aber NONVCL oops meine natürlich NONMSVC.

Aber Danke für deinen Lösungsansatz.
Würde gerne wissen wie sich deine Lösung zusammen setzt.
Also die Formatierung.

Auch in C++ kann man eine EXE von 3 MB und mehr erstellen es geht aber auch in 64 KB das ist kein Witz,

Zitat:
warning C4477: "_snwprintf_s": Die Formatzeichenfolge "%.3f" erfordert ein Argument vom Typ "double", das variadic-Argument "1" weist aber den Typ "int" auf.
warning C4477: "_snwprintf_s": Die Formatzeichenfolge "%.3f" erfordert ein Argument vom Typ "double", das variadic-Argument "2" weist aber den Typ "int" auf.
Code:
WCHAR* STRD(IN double N) {
    static WCHAR ws[128] = { 0 };
    swprintf(ws, strSize(ws), L"%f", N);
    return (WCHAR*)ws;
}
oder
Code:
WCHAR VideoInfo[MAX_PATH] = { 0 };
_snwprintf_s(VideoInfo, MAX_PATH, 259, L"%d x %d, %6.3f FPS", aMediaProperty.Video_Width, aMediaProperty.Video_Height, aMediaProperty.Video_FPS);
SetWindowText(hLblVideoInfo, VideoInfo);
ok glaube habe es verstanden.. Danke
Code:
WCHAR AudioProperty[MAX_PATH] = { 0 };
_snwprintf_s(AudioProperty, MAX_PATH, 259, L"%d Channel, %d SPS, %d BPS", aMediaProperty.Audio_Channels, aMediaProperty.Audio_Samplerate, aMediaProperty.Audio_BitsPerSample);
SetWindowText(hLblAudioProperty, AudioProperty);
gruss

Geändert von EWeiss ( 5. Aug 2017 um 13:51 Uhr)
  Mit Zitat antworten Zitat