Home
| Calendar
| Mail Lists
| List Archives
| Desktop SIG
| Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings Linux Cafe | Meeting Notes | Linux Links | Bling | About BLU |
Don't use multidimensional arrays for image processing. You'll take huge speed hits and the compiler won't be able to optimize. Allocate a single dimensional N*M array and do the math to get to the pixels you need. You'll find it much easier to deal with in the long run. Not to mention for loops to deallocate the sub-arrays will get very old, very quickly. Remember, C isn't Matlab. -Josh On Nov 16, 2005, at 10:54 AM, Anthony Gabrielson wrote: > Thanks - That worked like a champ :). > > Anthony > > On Wed, 16 Nov 2005, Seth Gordon wrote: > >> Ooh! Ooh! Ooh! Mr. Kotter! >> >>> #include <stdio.h> >>> >>> #define D1 4 >>> #define D2 2 >>> >>> int main(){ >>> >>> int *array; >> >> Here you're defining "array" as a pointer to an int. >> >>> >>> array = malloc(sizeof(int) * (D1 * D2)); >>> >>> array[1][1] = 32; >> >> Here you're using "array" as a pointer *to a pointer* to an int. >> >>> >>> printf("Elem[1][1] = %d\n",array[1][1]); >>> >>> free(array); >>> >>> return 0; >>> } >> >> Try changing "int *array" to "int **array". >> _______________________________________________ >> Discuss mailing list >> Discuss at blu.org >> http://olduvai.blu.org/mailman/listinfo/discuss >> > _______________________________________________ > Discuss mailing list > Discuss at blu.org > http://olduvai.blu.org/mailman/listinfo/discuss
BLU is a member of BostonUserGroups | |
We also thank MIT for the use of their facilities. |