Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2002
    Messaggi
    6

    Operazioni con le stringhe sui puntatori...

    Scusate se v rompo per l'ennesima volta, ma sono un pò confuso!

    Quello che voglio fare è simulare in c un programma che calcoli il CRC. Data una stringa in input devo farci delle operazioni.

    Ammettiamo che la riceva col metodo del puntatore :

    Dichiaro il puntatore, ci alloco la memoria con malloc e inserisco con scanf o con gets la stringa. e fin qui ci siamo. Ma se poi devo fare delle modifiche alla stringa (per esempio *(str+2)='0' il programma all esecuzione dell istruzione va in error perkè quella cella va scritta una sola volta e nn si puo riscrivere, fatto sta che nn posso effettuare modifiche.

    Come posso rimediare? Posso usare un array.. ma il puntatore mi fa comodo perkè in seguito posso far iniziare o terminare la stringaa dove voglio semplicemente mettendo un null o incrementando str(str=++str).

    Grazie e scusate se sono stato poko kiaro.

  2. #2
    Non dovresti allocare memoria per un puntatore a char se poi gli passi una stringa (così facendo il puntatore non punterebbe più alla memoria allocata in partenza). Comunque data una stringa puoi calcolarne la lunghezza, allocare memoria per un array dinamico che contenga la stringa, inserire la stringa in questo array e da qui fare tutte le operazioni che vuoi. E' laborioso ma è la prima soluzione che mi è venuta in mente. Correggimi se ho detto qualcosa di sbagliato; ciao!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.