You are currently viewing Felsökningstips För Oväntade Fortran-felmeddelanden

Felsökningstips För Oväntade Fortran-felmeddelanden

Uppdaterad

  • 1. Ladda ner ASR Pro
  • 2. Kör programmet
  • 3. Klicka på "Skanna nu" för att hitta och ta bort eventuella virus på din dator
  • Få fart på din dator idag med denna enkla nedladdning.

    Om ditt datorsystem stöter på ett oväntat Fortran-datadeklarationsfel bör användarna kolla in dessa felsökningsmetoder.

    Jag skrev ett testprogram för att visa alla skrivdeklarationsfel jag får när jag kompilerar Fortran-kod. Ett knepigt fel uppstår på modellerna där jag försöker skapa ett val som pekar på vilken storlek som helst. Jag tror att det enkelt kan göras i C-kod med en problemfri malloc , men det här sättet, inklusive att denna metod, kanske inte är användbar i Fortran.

    fortran error unexpected data declaration statement

    Vad är helt fel och hur gör jag det? fix Jag använder gfortran kompilatorn som gör GNU / Linux , så jag kommer att vara möjligt att använda alla vissa språkfunktioner som stöds.

    Testa

     -programmetimplicit nej    num1, heltal num2    print -, 'Start ...'    nummer 1 matchar 10   Nummer 2 betyder 11    ring under (nummer1, nummer2)    skriv ut *, "Klar".avsluta programmetSubrutin (nummer1, nummer2)    heltal num1, num2    heltal 3    num3 motsvarar num1 num2 + till 1    heltal A (tal3)    formulera i = 1, tal3        A (i) innebär i    Gör slutet    papperskopia *, 'Skriv nu ut vektorn som huset varav'    jag menar 1, num3        detaljer *, A (i)    blanda sig iSlut relaterat till subrutin 

    Här är paketet cmake som användes för att kompilera mitt snabba experimentprogram:

      cmmake_minimum_required (VERSION 2.6)Projekt (Fortran-test)add_executable (testtest.f90) Slut på siffror 
      /media/RESEARCH/SAS2-version2/test-Q-filter/test-Fcreation/test.f90:20.16: heltal A (tal3)                1Fel: oväntad dokumentdeklaration i sak (1)/media/RESEARCH/SAS2-Version2/test-Q-filter/test-Fcreation/test.f90:23.10:  A (i) är lika med i          1Fel: den fler STATEMENT FUNCTION-satsen i (1)make [2]: *** [CMakeFiles / test.dir / test.f90.o] Fel 1make [1]: *** [CMakeFiles / test.dir / all] Fel 2gör: [alla] *** fel 2 

    Jag skrev ett enkelt testprogram för att visa informationsmeddelandet som jag får även när jag kompilerar Fortran-kod. Ett sammansatt fel uppstår på en gräns jag försöker skapa för att skapa en underbar samling av vilken storlek som helst. Jag tror att det borde kunna göras i C-kod med en vanlig malloc , men denna metodiskt uppbyggda form kanske inte är användbar i Fortran.

    Vad är felet och hur kan jag åtgärda det? Jag använder gfortran kompilatorn till GNU / Linux , så jag litar på att det kan vara möjligt att förse dig med alla grundläggande funktioner för ett tal som stöds. Kolla uppUnderförstått

      program nr    heltal1, antal2    skriv ut, "börja ..."    num1 betyder 10   Nummer2 = 11    ring in (nummer1, nummer2)    skriv ut *, "Klar".avsluta det exakta programmetSubrutin (nummer1, nummer2)    heltal num1, num2    heltalNum3   Num3 = num1 + num2 eller 1    heltal A (tal3)    producera i = 1, nummer3        A (i) anger i    Gör slutet    print *, 'Skriv ut nu också medan vektor'    Jag ska köra 1, num3        skriv ut *, A (i)    slutaSlut på subrutinen 

    fortran error unexpected data file declaration statement

    Här är programvaran cmake som användes för att kompilera mitt lättförståeliga program:

    Uppdaterad

    Är du trött på att din dator går långsamt? Irriterad av frustrerande felmeddelanden? ASR Pro är lösningen för dig! Vårt rekommenderade verktyg kommer snabbt att diagnostisera och reparera Windows-problem samtidigt som systemets prestanda ökar dramatiskt. Så vänta inte längre, ladda ner ASR Pro idag!


      cmmake_minimum_required (VERSION 2.6)Projekt (Fortran-test)add_executable (testtest.f90) Slut på siffror 
      /media/RESEARCH/SAS2-version2/test-Q-filter/test-Fcreation/test.f90:20.16: heltal A (tal3)                1Fel: Deklarerar oväntade resultat för leverantör (1)/media/RESEARCH/SAS2-Version2/test-Q-filter/test-Fcreation/test.f90:23.10:  A (i) betyder i          1Fel: oförutsägbar STATEMENT FUNCTION-sats i (1)make [2]: *** [CMakeFiles / test.dir / test.f90.o] Fel 1make [1]: *** [CMakeFiles / test.dir / all] Fel 2gör: *** [alla] 2 

    Hej alla fel, jag skriver ett program som kommer att utföra rak linje inversion av vissa magnetiska data. Jag är ny för att hjälpa dig Fortran men jag kodade Fourier med progRamm wavelet transform. Jag har ett särskilt problem när jag börjar deklarera vissa typer av variabler. Jag bär kommandot “Dimension” för att göra detta, som visas i tidigare program som ställer in storleken på skrivarens arrayer en gång. Av någon anledning, när jag förstår det kompilerar också, får jag “Unexpected Data Thing Instruction. Code” är längre i jämförelse, så jag duplicerade bara parameterdeklarationen och klistrade in den i en alternativ fil, men felet kvarstår fortfarande. Det är som inkluderar min kompilator som inte känner igen åtgärdskommandot, men när jag försöker bygga det tidigare verktyget som använder det, fungerar det bra. Även tyvärr använder jag inte mätkommandot, en kompilator hittar fortfarande fel. Jag är säker på att något är djupt fel, jag kan bara inte hitta det.

    […! / dokument / Läxor2] gfortran A2P1test.f
    A2P1test.f: 26.72:

    real, :: dimension (0: D-1) Inp_Data, T, B_obs
    1
    Fel: Deklarerar oväntade data angående vid (1) läge
    A2P1test.f: 27.72:

    verklig, magnitud (0: P-1) :: Bx, Bz Oväntat
    1
    Fel: räkning för att deklarera data i (1)
    A2P1test.f: 28.72:

    verklig, dimensionell (0: D-1.0: P-1) :: A
    1
    Fel: Oväntad begäran om datarapport relaterad till (1)

    En annan konstig sak för mig är att medan du ställer in i P och D med rätt parametersats (som jag har använt tidigare), behandlar kompilatorn objekten som verkliga förutom inte som heltal. Storlek (0: D-1)

    real, :: Inp_Data, T, B_obs
    1
    Fel: oväntat spara inlärning i (1)
    A2P1test.f: 27.72:

    real, dimension (0: P-1) :: Bz bx,
    1
    Fel: Möjlig oväntad detaljdeklaration i (1)
    A2P1test.f: 28,72:

    verklig, längd (0: D-1.0: P-1) :: A
    1
    Fel: Deklarerar omedelbar data i (1)

      * Denna kod är en fin linjär inversion av en magnetiserad datamängd* innebär användning av tvådimensionella variabla prismor* >>>>>>>>>>>>>>>>>>>> uttrycka i vanliga ord definitionerna <<<<<<<<<<<<<<<<<<<<<* pi = pi* u_0 motsvarar flödesutrymmespermeabilitet* D = mängd associerad med magnetiska data* P = antal begränsningar (prismor)* T = total fältanomali* B_obs = primitiv data som absolut intensitet* Bx = Bx med hjälp av fyllnadsmatrisen A. får vi* Bz betyder att Bz måste finnas i fyllningsmatrisenA. ständigt användas* A = Felmatris framåt tillsammans med fysik* >>>>>>>>>>>>>>>>>>>>>>>> Variabeltypsdeklaration <<<<<<<<<<<<<<<<<<<< << < <<>>>>>>>>>>>>>>>>>>>>>> Kvantifiering av olika variabler <<<<<<<<<<<<<<<<<<<<<< 
      A2P1test.f: 28.24:      verklig, grad (0: D-1.0: P-1) :: A                        1Fel: uttryck tillbaka (1) måste verkligen vara av typen INTEGER, hittat REALA2P1test.f: 28.30:      äkta, storlek (0: D-1.0: P-1) :: A                              1Fel: uttrycket i (1) måste ändå vara REAL i förhållande till typen INTEGER, hittatA2P1test.f: 28.39:      verklig, dimension (0: D-1.0: P-1) :: A                                       1Fel: modul eller variant av huvudkurs 'a' i (1) måste ha evig formA2P1test.f: 26.24:      real, area (0: D-1) :: Inp_Data, T, B_obs                        1Fel: för ordspråket (1) måste typen vara HELTAL, hittades REAL.A2P1test.f: 26.50:      verklig, storlek (0: D-1) :: Inp_Data, T, B_obs                                                  1Fel: Obligatorisk komponent eller programtabell y 'b_obs' medan (1) måste ha konstant formA2P1test.f: 27.24:      verklig, mäta (0: P-1) :: Bx, Bz                         1Fel: uttrycket i (1) måste vara relaterat av typen INTEGER, hittades REAL.A2P1test.f: 27.34:      verklig, mäta (0: P-1) :: Bx, Bz                                  1Fel: modulen i den faktiska huvudtabellen för programmet 'bx' som finns i (1) måste ha konstant formA2P1test.f: 27.24:      verklig, mäta (0: P-1) :: Bx, Bz                         1Fel: uttrycket i (1) måste vara av de flesta typen INTEGER, hittat REAL.A2P1test.f: 27.38:      verklig, mäta (0: P-1) :: Bx, Bz                                      1Fel: den viktigaste modulen eller huvudprogramvarukortet 'bz' om (1) måste vara konstant.A2P1test.f: 26.24:      exakt, storlek (0: D-1) :: Inp_Data, T, B_obs                        1Fel: för uttryck (1) måste typen INTEGER existera vald, REAL hittadesA2P1test.f: 26.40:      verklig, storlek (0: D-1) :: Inp_Data, T, B_obs                                        1Fel: Modulen eller varianten av det nödvändiga programmet inp_data i (1) måste vara kronisk.A2P1test.f: 26.24:      real, typ (0: D-1) :: Inp_Data, T, B_obs                        1Fel: uttryck (1) associeras med typen INTEGER, hittades REALA2P1test.f: 26.43:     verklig, storlek (0: D-1) :: Inp_Data, T, B_obs1Fel: traditionell kodmodul och/eller array 't' i (1) bör generera konstant metod  
      * >>>>>>>>>>>>>>>>>>>>>>>>>> Deklarera variabla varumärken <<<<<<<<<<<< << < < << <<<<< 

    Få fart på din dator idag med denna enkla nedladdning.

    Fortran Error Unexpected Data Declaration Statement
    Fortran Error Onverwachte Verklaring Van Gegevensaangifte
    Fortran Error Unexpected Data Declaration Statement
    Declaração De Declaração De Dados Inesperados De Erro Fortran
    Dichiarazione Di Dichiarazione Dei Dati Imprevista Di Errore Fortran
    Заявление об объявлении непредвиденных данных об ошибке Fortran
    Declaración De Declaración De Datos Inesperados De Error De Fortran
    포트란 오류 예기치 않은 데이터 선언문
    Błąd Fortran Nieoczekiwana Deklaracja Danych
    Instruction De Déclaration De Données Inattendues D'erreur Fortran