unsigned int count = 0;
std::cin >> count;
int TextFeld ** array = new TextFeld*[count];
if(array == nullptr) return -1;
for(size_t i = 0; i < count; ++i)
{
array = new TextFeld();
char* tmp = nullptr;
scanf("%ms[^\n]", &tmp);
array->text = tmp;
array->len = strlen(tmp);
}
for(size_t i = 0; i < count; ++i)
{
std::cout << std::setw(5) << array->len << ": " << array->text << std::endl;
}
for(size_t i = 0; i < count; ++i) delete array;
delete[] array;
}
struct TextFeldMod : public TextFeld {
TextFeldMod() { text = nullptr; len = 0; }
~TextFeldMod() { free(text); }
};
Das Programm läuft nicht. Ich bin mir nicht sicher wie ich die Variablen richtig deklariere. z.b. TextFeld Ich bin mit meinem Wissem am Ende angelangt.
Bin für jeden Lösungsvorschlag oder Hilfe sehr Dankbar!
Frage
asdf234
Liebes Forum,
Das Programm soll eine ganze Zahl n einlesen, und anschließend n Text in einer Strucktur speichern und ausgeben. In der Form:
struct TextBlock
{
char * Text;
size_t Laenge;
};
Ich habe bisher:
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iomanip>
using namespace std;
int main(int argc, char* argv[])
{
unsigned int count = 0;
std::cin >> count;
int TextFeld ** array = new TextFeld*[count];
if(array == nullptr) return -1;
for(size_t i = 0; i < count; ++i)
{
array = new TextFeld();
char* tmp = nullptr;
scanf("%ms[^\n]", &tmp);
array->text = tmp;
array->len = strlen(tmp);
}
for(size_t i = 0; i < count; ++i)
{
std::cout << std::setw(5) << array->len << ": " << array->text << std::endl;
}
for(size_t i = 0; i < count; ++i) delete array;
delete[] array;
}
struct TextFeldMod : public TextFeld {
TextFeldMod() { text = nullptr; len = 0; }
~TextFeldMod() { free(text); }
};
Das Programm läuft nicht. Ich bin mir nicht sicher wie ich die Variablen richtig deklariere. z.b. TextFeld Ich bin mit meinem Wissem am Ende angelangt.
Bin für jeden Lösungsvorschlag oder Hilfe sehr Dankbar!
5 Antworten auf diese Frage
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden