Ik ben een tentamen en het leren over programmeren in C. Daarbij kwam ik de volgende opgave tegen in een oud tentamen.
Wat is de output van de volgende code:
Het antwoord moet zijn (zelf ervaren na compilatie):
abcd abcd abcd abcd
pq pq pq pq
pq pq brood pq
Dit had ik echter niet verwacht. De eerste regel begrijp ik nog wel. Die 2 erna echter niet.
Wie heeft de oplossing / uitleg?
Wat is de output van de volgende code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| #include <stdio.h>
#include <string.h>
void main()
{
char s[5] = "abcd";
char *lijst[4];
int i;
for(i=0; i<4 ; i++)
{
lijst[i] = s;
}
printf("%s %s %s %s\n", lijst[0], lijst[1], lijst[2], lijst[3]);
strcpy(lijst[1] ,"pq");
printf("%s %s %s %s\n", lijst[0], lijst[1], lijst[2], lijst[3]);
lijst[2] = "brood";
printf("%s %s %s %s\n", lijst[0], lijst[1], lijst[2], lijst[3]);
} |
Het antwoord moet zijn (zelf ervaren na compilatie):
abcd abcd abcd abcd
pq pq pq pq
pq pq brood pq
Dit had ik echter niet verwacht. De eerste regel begrijp ik nog wel. Die 2 erna echter niet.
Wie heeft de oplossing / uitleg?