Я думал, что, наконец, добираюсь куда-то в С, но ударил кирпичную стену на этом. Я только что потратил последние 30 минут на поиск возможных решений, некоторые из которых включают memcpy, strcpy и т. Д., Но ни одна из них, похоже, не решает мою проблему. Возможно, я неправильно их использую.
Я создал базовую программу, иллюстрирующую мою проблему. Я надеюсь, что показ того, как исправить эту часть кода, поможет мне лучше понять, где я ошибаюсь.
#include <stdio.h>
#include <stdlib.h>
//The program is trying to attempt to give 'test[0] a value of 255'
int main(int argc, char ** argv)
{
//example variables
int height = 4;
int width = 4;
unsigned char image[width][height];
char *test;
//gave the 0th element a basic value
image[0][0] = 255;
//prints out 'Image = 255' as expected
printf("Image = %d\n", image[0][0]);
//allocate test some memory
test = malloc(height * width * sizeof(char));
//Now the problems..
//attempt to give test[0] the value of image[0][0]
test[0] = image[0][0];
//prints out '-1'
printf("Test = %d\n", test[0]);
}