C programmering :: Array

Et vigtigt punkt i forståelsen af C er, hvornår variablers tilgang er med by value eller by reference. Begrebet som blev introduceret ved parameteroverførsler i funktioner, er gennemgående for C, idet tilgangen til variabler udover simple standard definerede datatyper altid er by reference. Simple standard definerede datatyper er char, int, float og double.

by value er når du skriver variabelens navn giver C dig dens værdi.

by reference er når du skriver variabelens navn giver C dig dens adresse.

Således vil nedenstående forsøg på at kopiere indholdet af A over i B ikke være tilladt:

int A[4]={1,2,3,4}; int B[4]; B=A;

Fordi A giver adressen (by reference) og B er ikke en variabel, der kan tildeles en adresse. Compileren vil underforstået bruge adresseoperatoren & som om du skrev:

B=&A;

Adresseoperatoren & som giver altid adressen på en variabel, også simple typer. Selvfølgelig er ovenstående brug af adresseoperatoren overflødig og sætningen stadig ikke tilladt..

Derimod vil vi kopiere indholdet, må vi gøre tilgangen på simple datatyper. Der er int-elementer i array og derfor kan en måde at kopiere indholdet i stedet gøres med:

int A[4]={1,2,3,4}; int B[4]; for (i=0; i<3; i++) { B[i]=A[i]; }

Der findes, hvis vi inddrager library <string.h>, muligheder for kopiering med bla. memcpy.

 

 

Ressourcer C Library opslag The Single UNIX® Specification, Version 2 Copyright © 1997 The Open Group GNU C Library Engelsk, med masser af gode og dybe artikler. Danske søgeord Find selv de bedste danske søgeord til din hjemmeside.
Produkter Bookingsystem
System for reservation af tid for behandlinger, aftaler, lokaler, udstyr, personale. Tilpasset lektionstimer. Udskriver arbejdsplaner og ugeskema for opslag. Statistik. Danmarks bedste pris nu kun kr. 1.695,-
HelpdeskEffektiviser din support-organisation med et Helpdesksystem. Fjern tidrøvere der forhindrer fokus på problemløsning. Lektionsplan Formidling af generelle information og specifikke lektioner fra undervisere til studerende/elever. Medlemssystem Medlemssystem online med administration af medlemskartotek, kontingentbetalinger, flettefiler m.m.
Styr selv Styr selv indholdet på dine hjemmesider med Content Management System.
Citat Den styrer bedst, som styrer mindst.

Lao-tze



Professionelle løsninger til Internettet. Webdesign, e-handel, cms, søgeoptimering, webhotel, analyse, Intranet mm.