Hey Leute. Ich arbeite daran, älteren Code für meinen Job zu reparieren. Es ist derzeit in C++ geschrieben. Sie haben die statische Zuweisung in dynamic konvertiert, aber die memsets/memcmp/memcpy nicht bearbeitet. Dies ist mein erstes Programmierpraktikum, so leer mit meiner Newbe-ähnlichen Frage.Verwenden von MEMSET auf Strukturen in C++
Der folgende Code ist in C, aber ich möchte es in C++ haben (Ich habe gelesen, dass malloc ist keine gute Praxis in C++). Ich habe zwei Szenarien: Zuerst haben wir erstellt. Dann verwenden Sie & f, um mit Null zu füllen. Der zweite ist ein Zeiger * pf. Ich bin nicht sicher, wie pf auf alle 0 wie das vorherige Beispiel in C++ festgelegt werden.
Konnten Sie einfach pf = new foo
anstelle von malloc tun und dann memset(pf, 0, sizeof(foo))
anrufen?
struct foo { ... } f;
memset(&f, 0, sizeof(f));
//or
struct foo { ... } *pf;
pf = (struct foo*) malloc(sizeof(*pf));
memset(pf, 0, sizeof(*pf));
Es hängt davon ab, was in foo ist! –