Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C] convertire array char in int

    Salve a tutti

    Ho una domanda da porre : ho la necessita di convertire un array di char (una stringa) in intero. mi spiego meglio :

    il mio array ad esempio può essere fatto cosi :

    a[0]= 7
    a[1]= 5
    a[2]= 33

    e ho necessita di portare il numero 7533 dentro un int. quindi il riultato finale dovrebbe essere

    int c = 7533.

    Avete qualche idea in proposito?

    importante : non è possibile usare a priori un array diverso da quello char.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    153
    intanto a[2]=33 non è una cosa fattibile a meno che a[2] a sua volta non sia un'array...comunque è abbastanza facile direi:

    codice:
    //supponi di avere un array fatto cosi
    array n[5]={'1','2','3','4','5'}
    //ti basta fare
    int a;
    a=(n[0]-48)*10000+(n[1]-48)*1000+(n[2]-48)*100+(n[3]-48)*10+(n[4]-48)
    //nota che 48 è la rappresentazione dello zero nella codifica ascii
    ovviamente questo tipo di problema si fa con un ciclo ma l'esempio ti dovrebbe chiarire abbastanza sul come procedere...ciao ciao
    cogli l'attimo

  3. #3
    ti ringrazio per la risposta. Ora provo e poi ti faccio sapere.
    Non avevo pensato alla possibilità del codice ascii

  4. #4
    ciao. Ho trovato una soluzione piu semplice, che magari può essere di aiuto per qualcuno

    #include <stdlib.h>

    e utilizzare la funzione ATOI

    int atoi (char *c)

    sostanzialmente fa quello di cui ho bisogno io, ma è una funziona gia fatta :-D


    Buona Serata

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.