Arrays er en enkel og effektiv form for bestilt lagring av data. De brukes i nesten alle dataprogrammer. I de fleste tilfeller blir informasjonen i dem generert under driften av applikasjonen. Men noen ganger må du angi en matrise etter å ha mottatt data fra en eller annen kilde.
Nødvendig
- - tekstredigerer eller IDE;
- - C ++ kompilator.
Bruksanvisning
Trinn 1
Skriv inn en matrise som ber brukeren om data. Beregn eller spør etter antall elementer som skal angis. Lag en matrise av ønsket størrelse. Legg til en løkke til ønsket sted i programkoden for å gjenta over alle elementene. I en løkke kan du spørre om dataene for hvert element, og kontrollere om inngangen er riktig. Ulike metoder kan brukes til å utføre datainndata. Å bruke scanf- og wscanf-funksjonene til C-biblioteket er den klassiske måten. Disse funksjonene er imidlertid usikre. En bufferoverløp kan føre til en sikkerhetsfeil. C ++ -strømmer gir praktisk og sikker inngang, men de har også ulemper. Det enkleste eksempelet på å fylle en matrise med et standard inngangsobjekt kan se slik ut: int aNumbers [10]; for (int i = 0; i <10; i ++) {std:: cout
Steg 2
Skriv inn matrisen fra filen. Bruk formaterte inngangsfunksjoner (fscanf, fwscanf) og stream objekter (for eksempel ifstream) for å implementere enkle lesealgoritmer. Spor inndatafeil med de dårlige, mislykkede, gode, rdstate-metodene når du bruker strømmer. Et enkelt eksempel på å lese data fra en fil kan se slik ut: int aNumbers [10]; std:: ifstream oFileStream ("filnavn.txt"); hvis (! oFileStream.fail ()) {for (int i = 0; (i> aNumbers ;} else std:: cout
Trinn 3
Skriv inn matrisen direkte i programkoden som statiske data. Bruk matrikelbokstaver for å initialisere de tilsvarende variablene. For eksempel, en rekke int-verdier av udefinert lengde, som er et statisk medlem av klassen, og erklært som: klasse CMyClass {… statisk konst int m_anMyArray; …}; Må initialiseres som følger: const int CMyClass:: m_anMyArray = {10, 20, 30, 40}; Ved å bruke denne metoden kan du legge inn matriser med strukturer av hvilken som helst kompleksitet i kildekoden til programmene.