tanszek:oktatas:muszaki_informatika:memoria_kezeles_c-ben
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tanszek:oktatas:muszaki_informatika:memoria_kezeles_c-ben [2025/03/12 19:07] – knehez | tanszek:oktatas:muszaki_informatika:memoria_kezeles_c-ben [2025/03/13 22:13] (current) – [Ellenőrző kérdések] knehez | ||
|---|---|---|---|
| Line 111: | Line 111: | ||
| </ | </ | ||
| - | **megoldás**: | + | **megoldás**: |
| ---- | ---- | ||
| Line 152: | Line 152: | ||
| </ | </ | ||
| - | **megoldás**: | + | **megoldás**: |
| + | ===== Ellenőrző kérdések ===== | ||
| + | **Mi a helyes deklarációja egy int típusra mutató pointernek? | ||
| + | | ||
| + | A) int p*; | ||
| + | B) int *p; | ||
| + | C) pointer int p; | ||
| + | D) int &p; | ||
| + | |||
| + | Megoldás: B | ||
| + | |||
| + | ---- | ||
| + | |||
| + | **Hogyan lehet helyesen lefoglalni memóriát egy 10 elemű int tömbnek dinamikusan? | ||
| + | |||
| + | A) int *arr = malloc(10); | ||
| + | B) int arr = malloc(10 * sizeof(int)); | ||
| + | C) int *arr = malloc(10 * sizeof(int)); | ||
| + | D) int arr[10] = malloc(sizeof(int)); | ||
| + | |||
| + | Helyes válasz: C | ||
| + | |||
| + | ---- | ||
| + | **Mi lesz az eredmény? | ||
| + | |||
| + | <sxh c> | ||
| + | int array[] = {100, 200, 300}; | ||
| + | int *ptr = array; | ||
| + | printf(" | ||
| + | printf(" | ||
| + | </ | ||
| + | |||
| + | A) 100200 | ||
| + | B) 200300 | ||
| + | C) 100100 | ||
| + | D) 200200 | ||
| + | |||
| + | Megoldás: A. *(ptr++) előbb kiírja a 100-at, majd eggyel tovább lépteti a pointert. A következő kiírás már a 200-ra mutat. | ||
| + | |||
| + | ---- | ||
| + | **Melyik állítás igaz az alábbiak közül?** | ||
| + | |||
| + | A) Egy pointer típusa nem függ attól, hogy milyen adatra mutat. | ||
| + | B) Egy pointer mindig egész számot tárol. | ||
| + | C) Pointerek aritmetikája nem megengedett C-ben. | ||
| + | D) Egy pointer típusa meghatározza, | ||
| + | |||
| + | Helyes válasz: D | ||
| + | |||
| + | ---- | ||
| + | **Mi lesz az eredmény? | ||
| + | |||
| + | <sxh c> | ||
| + | int x = 5, y = 10; | ||
| + | int *p = &x; | ||
| + | int *q = &y; | ||
| + | *p = *q; | ||
| + | printf(" | ||
| + | </ | ||
| + | |||
| + | A) 5 10 | ||
| + | B) 10 10 | ||
| + | C) 5 5 | ||
| + | D) 10 5 | ||
| + | |||
| + | Helyes válasz: B. | ||
| + | |||
| + | ---- | ||
| + | **Mire mutat a p pointer a következő deklaráció után?** | ||
| + | |||
| + | <sxh c> | ||
| + | int arr[10]; | ||
| + | int *p = arr; | ||
| + | </ | ||
| + | |||
| + | A) Az arr tömb első elemére | ||
| + | B) Az arr tömb utolsó elemére | ||
| + | C) Az arr tömb méretére | ||
| + | D) Véletlenszerű memória címre | ||
| + | |||
| + | Megoldás: A | ||
| + | |||
| + | ---- | ||
| + | **Mi a hiba a következő kódrészletben? | ||
| + | |||
| + | <sxh c> | ||
| + | int num = 20; | ||
| + | int *ptr; | ||
| + | *ptr = num; | ||
| + | </ | ||
| + | |||
| + | A) Érvénytelen pointer-dereferencia (nem inicializált pointer) | ||
| + | B) Szintaktikai hiba | ||
| + | C) Hiányzó pontosvessző | ||
| + | D) A num változó helytelen típusa | ||
| + | |||
| + | Megoldás: A | ||
| + | |||
| + | ---- | ||
| + | **Mi lesz a következő kód kimenete?** | ||
| + | |||
| + | <sxh c> | ||
| + | char *str = " | ||
| + | printf(" | ||
| + | </ | ||
| + | |||
| + | A) H | ||
| + | B) e | ||
| + | C) l | ||
| + | D) o | ||
| + | |||
| + | Megoldás: B | ||
| + | |||
| + | ---- | ||
| + | **Mit jelent, ha egy pointer NULL értékű? | ||
| + | |||
| + | A) A pointer érvényes memória címre mutat | ||
| + | B) A pointer egy egész számot tárol | ||
| + | C) A pointer nem mutat érvényes memória címre | ||
| + | D) A pointer konstans értékre mutat | ||
| + | |||
| + | Megoldás: C | ||
| + | |||
| + | ---- | ||
| + | **Mi lesz a következő kód kimenete?** | ||
| + | |||
| + | <sxh c> | ||
| + | int a[] = {2, 4, 6, 8}; | ||
| + | int *p = a; | ||
| + | printf(" | ||
| + | </ | ||
| + | |||
| + | A) 2 | ||
| + | B) 4 | ||
| + | C) 6 | ||
| + | D) 8 | ||
| + | |||
| + | Megoldás: C | ||
| + | |||
| + | ---- | ||
| + | **Melyik operátor adja vissza egy változó memória-címét? | ||
| + | |||
| + | A) * | ||
| + | B) & | ||
| + | C) % | ||
| + | D) # | ||
| + | |||
| + | Megoldás: B | ||
| + | |||
| + | ---- | ||
| + | **Mit ír ki a következő programrészlet? | ||
| + | |||
| + | <sxh c> | ||
| + | int x = 5; | ||
| + | int *p = &x; | ||
| + | *p = 10; | ||
| + | printf(" | ||
| + | </ | ||
| + | |||
| + | A) 5 | ||
| + | B) 0 | ||
| + | C) 10 | ||
| + | D) véletlenszerű érték | ||
| + | Megoldás: C , mivel az x értéke megváltozik a pointeren keresztül | ||
tanszek/oktatas/muszaki_informatika/memoria_kezeles_c-ben.1741806429.txt.gz · Last modified: 2025/03/12 19:07 by knehez
