Niedawno zacząłem programować i co rusz wpadam na jakieś problemy. Jeśli wśród Was znajdzie się ktoś, któ zna się na C, ma za dużo wolnego i miałby ochotę poodpowiadać na parę pytań może liczyć na moją wielką wdzięczność
mój aktualny problem to "expected expression before ‘obrazek’"
Nie rozumiem dlaczego kompilator nie ma problemu z "void negatyw (obrazek *ob)", ale kiedy przychodzi do wynonania funcji problem się pojawia. (program docelowo ma działać na tablicach dynamicznych)
praogram wygląda tak (wersja okrojona):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#include "mod5.h"
#include <string.h>
#include <stdlib.h>
#define MAX 512 /* Maksymalny rozmiar wczytywanego obrazu */
#define DL_LINII 1024
int main()
{
printf("tworzenie negatywu...\n");
negatyw(obrazek *ob);
printf("wykonano\n");
return 0;
}
void negatyw (obrazek *ob)
{
int i,j; /*od maksymalnej wartsci szarosci odejmuje kazdy element tablicy*/
for (i=0; i<ob->wym_y;++i)
{
for (j=0; j<ob->wym_x;++j)
ob->obraz[j]=ob->odcieni-ob->obraz[j];
}
}
i plik nagłówkowy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define DL_LINII 1024
#define MAX 512
typedef struct /*inicjacja struktury zawierającej odcienie, wymiary i adres tablicy*/
{
int wym_x, wym_y, odcieni;
int **obraz;
} obrazek;
void negatyw (obrazek *ob);
Będę straszliwie wdzięczny za każdą pomoc
edit: racja jest bardziej czytelne, ale za to krzaczy forum ;/