HTML

Proghelp

Programozási tutorial-ok és feladat kidolgozások főleg Debreceni Egyetem Mérnök Informatikus hallgatóinak számára!

Friss topikok

Linkblog

Laborkártyák V.

szimih 2011.03.27. 16:06

1. kártya

int a;    
int *b;
int c[5];
int *d[5];
int e[3][3];
int *f ();
void* (*g)(void *);  // idáig voltak már kérdések egyszer
int &h = a;          // h változóval hivatkozunk az a változóra
void fgv(int& i);      // egy voidot visszadó fgv függvény mely bemenete egy int hivatkozás

 

2. kártya

#include <stdio.h>

void
csere (int &a, int &b)      // int típusú változóra hivatkozás a és b-vel
{
  a = a - b;         // vkét változó értékcseréje matematikai módon
  b = a + b;
  a = b - a;
}

int
main (void)
{

  int a = 5, b = 7;

  csere (5, 7);         // csere függvény hibás meghívása
  printf ("a=%d b=%d\n", a, b);

  return 0;
}

/*
Nem fordul le!
csere függvény hívásánál hivatkoznánk a változókra de itt constans számokat adunk meg. A hivatkozás egy alternatív név az az hivatkozás egy másik obbjektumra. Miután inicializáltuk ugyan úgy lehet használmi mint a célobjektumot.
*/

3. kártya

#include <stdio.h>

int
main (void)
{
  int a = 5;         // int típusú a változó értéke 5
  int *ap = &a;         // ap egy mutató mely az a-ra mutat
  int &ar = a;         // ar egy hivatkozás mely az a-ra hivatkozik
  int *ap2 = &ar;      // ap2 egy mutató mely az ar-ra mutat mely megeggyezik az a-val

  ++a;            // a növelése egyel
  ++*ap;         // ap mutatóval a növelése egyel
  ++ar;            // ar hivatkozással a növelése egyel, (hivtkozás mintha a saját nevét írnánk a változónak)
  ++*ap2;         // ap2 mutatóval az ar hivatkozáson keresztül az a növelése egyel

  printf ("a=%d\n", a);      // 4 növelés volt alap érték 5 így 5+4*1=9

  return 0;
}

/*
Lefordl
Kimenet:
a=9
*/

4. kártya

#include <stdio.h>

void
csere (int a, int b, int &c, int &d)   // csere függvény paraméterei: int típusú a és b változó mely csak az értéket veszi át, c és d int típusú hivatkozás, hivatkozott változó értékének manipulálása
{
  c = b;
  d = a;
}

int
main (void)
{
  int a = 5, b = 7;

  printf ("a=%d b=%d\n", a, b);
  csere (a, b, a, b);      // cseremegkapja paraméterként az a,b változókat lőször érték szerint majd hivatkozás szerint, megcseréli az értékület
  printf ("a=%d b=%d\n", a, b);

  return 0;
}

/*
Lefordul
Kimenet:
a=5 b=7
a=7 b=5
*/

5. kártya

 

Ez egy 3 dimenziós tömb és a címzése így nézne ki racsok[rácsIndex][x][y] így hát a racs-nak megmondtuk hogy csak az x és y által képzett mátrixot kapja meg ahol az első dimenzió( rácsindex ) 0.

racsindex 0
   y 0 1 2 ...
x 0
   1
   2
   ..

racsindex 1
   y 0 1 2 ...
x 0
   1
   2
   ..

  | x
  |
  |_ _ __y
 /
/racsindex

1 komment

A bejegyzés trackback címe:

https://proghelp.blog.hu/api/trackback/id/tr102775855

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

nb · http://fersml.blog.hu 2011.03.31. 10:10:08

Talán kicsit pontosabb a terminológia így: a h egy int típusú referencia, ami az a változóra hivatkozik.
süti beállítások módosítása