tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von sheel
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
269
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    oleeiner2 oleeiner2 ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    14
    kann man einen schon beschreibenen wchar_t x[300] array irgendwo im programmcode irgendwie wieder leeren?

    ich würde es ja
    mit x=L"";
    da mekkert aber der compiler mit
    1>d:\programmieren\mfc\primzahl\primzahl\primzahldlg.cpp(159): error C2440: '=': 'const wchar_t [1]' kann nicht in 'wchar_t' konvertiert werden
    1> Es gibt keinen Kontext, in dem diese Konvertierung möglich ist

    Mfg oleeiner 2
     

  2. #2
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.802
    Blog-Einträge
    5
    Code cpp:
    1
    
    x[0] = 0;

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  3. #3
    oleeiner2 oleeiner2 ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    14
    dann sind alle elemente des arrays = 0 oder nur das erste?
     

  4. #4
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    Richtig "leeren" kann man ein Array nicht.
    Etwas steht immer drin, auch wenn es nur Unsinn ist.

    Bei Strings gibt es aber eine ... Vorschrift, wie das Ende davon auszusehen hat.
    Wenn man 100 Plätze zur Verfügung hat muss es ja auch möglich sein,
    kürzere Wörter/Sätze darin zu speichern.
    Deshalb wird das Ende des sinnvollen Teils mit \0 markiert (nicht das Gleiche wie die Ziffer 0).
    Wenn man gleich am Anfang ein \0 hat, bedeutet das also, es ist nichts drin
    (obwohl danach noch ungenutze Zeichen kommen).

    Wenn du aus irgendeinem Grund jedes Zeichen auf \0 setzen willst,
    musst du das mit einer Schleife machen.
    Beim gezeigten Code wird nur das erste ([0]) Zeichen auf \0 gesetzt.
    oleeiner2 bedankt sich. 
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  5. #5
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.802
    Blog-Einträge
    5
    Zitat Zitat von sheel Beitrag anzeigen
    Wenn du aus irgendeinem Grund jedes Zeichen auf \0 setzen willst,
    musst du das mit einer Schleife machen.
    Oder besser mit std::fill:
    Code cpp:
    1
    
    std::fill(x, x + 300, L'\0');

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  6. #6
    oleeiner2 oleeiner2 ist offline Mitglied
    Registriert seit
    Oct 2011
    Beiträge
    14
    Naja reícht mir ja wenn im array nichts mehr drin ist außer müll
     

Ähnliche Themen

  1. Antworten: 7
    Letzter Beitrag: 10.10.11, 15:33
  2. array input feld per onchange leeren
    Von megatom im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 17.05.07, 19:34
  3. String Array leeren?
    Von Fridulin im Forum .NET Datenverwaltung
    Antworten: 22
    Letzter Beitrag: 20.01.06, 19:00
  4. Array leeren oder filtern, wie geht das?
    Von Blaubmania im Forum PHP
    Antworten: 3
    Letzter Beitrag: 03.02.05, 12:04
  5. ein Array Element leeren/löschen
    Von daywalkertp im Forum ASP
    Antworten: 2
    Letzter Beitrag: 13.05.04, 18:22