Хорошо, вот программа, которую я набрал (также включен stdio.h):
/* function main begins program execution */
int main (int argc, char *argv[])
{
int x; /*first number input*/
int y; /*second number input*/
int sum; /* variable in which sum will be stored */
int product; /* variable in which product will be stored */
int quotient; /* variable in which x divided by y will be stored */
int md; /* variable in which the modulo division of x divided by y */
x = argv[2]; /*assign total to x*/
y = argv[3]; /*assign total to y*/
if (argc ==3) {
sum = x + y; /* assign total to sum */
printf("%d\n",sum); /*print sum*/
product = x * y; /*assign total to product*/
printf("%d\n", product); /*print product*/
quotient = x / y; /*assign total to quotient*/
printf("%d\n", quotient); /*print quotient*/
md = x % y; /*assign total to md*/
printf("%d\n", md); /*print md*/
} /*end if*/
if (argc !=3) {
printf("need two integers\n"); /*need two integers*/
}
return 0; /*indicate program ran successfully*/
} /*end of main*/
Когда я запускаю его через компилятор, он говорит, что в строках 15 и 16 (x = и y = строки) «присваивание делает целое число из указателя без преобразования» Как мне это исправить?
** Я изменил его на x = atoi (argv [2]) и y = atoi (argv [3]), и это исправило эту проблему. Но как всегда что-то еще сейчас облажалось. Теперь, когда я запускаю программу, я получаю:
163 [main] a_4312 _cygtls :: handle_exceptions: Ошибка при выводе состояния
Ошибка сегментации
Я прочитал, что это означает, что я не выделил память для вывода или что-то в этом роде ... кто-нибудь может мне здесь помочь? **