Status_access_violation



  • Phenny schrieb:

    -----------------------------
    3 4 //Zeigt an wieviele Wörter die
    //entsprechende Anzahl an Buchstaben
    //haben und zählt sie auf, falls
    //es sonst zuviele Sternchen werden

    char strtmp[10];
    ...
    for(i=0;i<MAXW;++i)
      printf("%3s",l[i]>7?_itoa(l[i],strtmp,10):"");
    

    wobei _itoa kein ANSI C mehr ist.



  • Es gibt aber eine Alternative Funktion die ANSI C ist.
    Mit

    sprintf(strtmp,"%d",l[i])
    

    geht das auch, oder wers sicher mag kann auch snprintf verwenden.



  • Ja aber, wie mache ich das dann, wenn _itoa kein Ansi-C mehr ist?
    Der Compiler erkennt das ja dann nicht mehr. 😞



  • Ich habe auch schon probiert, sprintf bzw. snprintf in diese Zeile umzubauen,
    hat er aber dann andauernd Probleme mit dem Pointer. . . 😕



  • Phenny schrieb:

    Ich habe auch schon probiert, sprintf bzw. snprintf in diese Zeile umzubauen,
    hat er aber dann andauernd Probleme mit dem Pointer. . . 😕

    Wenn du MS-VC++ verwendest, ist _itoa definiert und du kannst es verwenden.
    itoa stammt noch aus seligen K&R Zeiten und hat es damals nicht in den ANSI Standard geschafft.
    Ansonsten bleiben nur längere Konstrukte übrig, wie

    (sprintf(strtmp,"%d",l[i]),strtmp)
    


  • Also, ich benütze NetBeans und den Compiler Cygwin...
    und der kennt diese Funktion leider nicht.



  • Ich habe es nun wie in deinem Beispiel gemacht, und es Funktioniert
    hervorragend. 😋
    Deshalb muss ich nocheinmal sagen wie dankbar ich euch
    bin! Also, recht herzlichen dank euch beiden!


Anmelden zum Antworten