Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Overflow

  1. #1
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657

    Overflow

    codice:
    [...]
    Do Until EOF(1)
        rigamod = rigamod + 1
    [...]
    Loop
    [...]
    Praticamente questo programma mi da esattamente overflow quando io eseguo il comando rigamod = rigamod + 1. Come mai?

  2. #2
    Utente di HTML.it L'avatar di biste
    Registrato dal
    Apr 2001
    Messaggi
    877
    Di che tipo è rigamod? quante righe ha all'incirca il file?
    UGIdotNET
    Microsoft .NET MCAD
    C++, C#, VB6, VB.NET, ASP, ASP.NET
    SQL Server 2000

  3. #3
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Era di tipo Byte, ma lo cambiato a integer. Il fatto è che nel byte l'overflow avviene prima delle 100 righe, invece con integer dopo le 100 (ho mi miei punti di riferimento). Il file è pressappoco 956 righe, ma l'utente ne potrebbe selezionare uno di 1542 righe o maggiore.

    X favore aiutatemi. Sn al 70%. nn mi bloccate ora

  4. #4
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Nessun'altro sa aiutarmi?

  5. #5
    non è che rigamod viene modificato anche da altre parti lerrore te lo dovrebbe dare oltre i 32000
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    271
    Prima del ciclo inizializza:

    codice:
    RigaMod = 0
    Signori si nasce! E io modestamente, lo nacqui!!!
    Totò

  7. #7
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Certo, io azzero sempre i contatori prima del ciclo, xo va sempre in overflow. Ho fatto questa funziona già 2 volte da capo, utilizzando esperienti diversi, ora la rifaccio.

  8. #8
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    Io uso questa sintassi Do Until EOF(1) perché so che ad ogni inizio di ciclo il file avanza di una riga. Per caso c'è qualche comando che mi permette di andare alla riga successiva senza utilizzare loop come questi?

  9. #9
    Questo programmino funziona, guarda le differenze con il tuo codice (se ce ne sono!). In un form metti due button (caption Scrivi e Leggi) e aggiungi questo codice:
    codice:
    Private Sub Command1_Click()
       'questa procedura scrive sul file c:\test.txt 32000 righe
       Dim i As Integer
    
       Open "c:\test.txt" For Output As #1
    
       For i = 1 To 32000
          Print #1, "Riga numero " & i
       Next
    
       Close #1
    End Sub
    
    Private Sub Command2_Click()
       'questa procedura legge il file c:\test.txt e lo invia alla console
       Dim rigamod As Integer
       Dim riga As String
    
       Open "c:\test.txt" For Input As #1
    
       rigamod = 0
    
       Do Until EOF(1)
          Line Input #1, riga
          rigamod = rigamod + 1
          Debug.Print rigamod, riga
       Loop
    
       Close #1
    End Sub
    Ti consiglio di fare un debug del tuo programma riga per riga e verifica che ad ogni ciclo del loop RigaMod si incrementi soltanto di 1.
    Chi non cerca trova.

  10. #10
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,657
    tas, grazie ma il mio prog deve scrive e leggere, file diversi, in un'unica funzione. Dopo numerose ricerche ho trovato un comando che mi permette di leggere recordo dove voglio io e di scrivere record dove voglio io. Xo nn so usarli.
    codice:
    a = 5
    Open "c:\uaz.txt" For Random As #1 Len = 10
    Put #1, a, "ciao"
    Close #1
    Il fatto che nn mi scrive nella riga 5, ma dove vuole lui. Io devo scrivere in righe BEN definite. Mi aiutate?

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 © 2025 vBulletin Solutions, Inc. All rights reserved.