Мне было интересно, есть ли способ создать дополнительные входы в мой код? Я программирую код, который будет печатать значения RGB для изображения с открытым текстом 480x480. Код должен позволять мне вводить 4 необязательных значения в любом порядке - -rx масштабирует грех красной составляющей каждого пикселя на два x, -gx -gx -го же, что и -r, за исключением зеленого компонента -bx делает то же самое, но с синим -sn указывает длину стороны изображения для целого числа n.Включая дополнительные входы в программу?
Вот мой код:
int* arrayfill()
{
int* bmult;
bmult = malloc(sizeof(int)*480*480);
for (int y = 0; y < 480; y++) {
for (int x = 0; x < 480; x++) {
bmult[x + y*480] = (128*sin(sqrt(pow(x-240,2) + pow(y-240,2)))+128);
if (0 <= (bmult[x + y*480]) || (bmult[x + y*480]) >= 255) {
continue;
}
else {
fprintf(stderr, "The scale must result in a b value between 0 & 255");
break;
}
}}
return bmult;
}
int main(int argc, char* argv[])
{
int* newarray = arrayfill();
printf(" P3\n");
printf("480 480\n");
printf("255\n");
for (int count = 0; count < 480*480; count++) {
printf("0, 0, %d\n", newarray[count]);
}
}
Используйте парсер параметров. С какими частями вам нужна помощь? Посмотрите, в основном, на какой-нибудь инструмент командной строки (post circa 1985?) – tripleee
Вот что значит 'argc' и' argv [] '. Тем не менее, я бы предложил следующий совет @ tripleee и использовать библиотеку синтаксического анализа командной строки, чтобы облегчить вашу жизнь. –