Я получаю предупреждение о передаче аргумента делает указатель из целого числа без приведения - PullRequest
0 голосов
/ 07 сентября 2018

C: \ Users \ OWNER \ Downloads \ program1.c | 61 | предупреждение: передача аргумента 1 в get_range делает указатель из целого числа без приведения |

Огромная проблема была бы очень признательна за помощь, которую профессор отказывает в помощи. Я смотрел на эту проблему около 3 часов после перерыва на обед. Я до сих пор не могу понять это. Если вы поможете мне это объяснить, чтобы я понял, что я делаю неправильно, я был бы очень признателен.

/**********************************************************************/
/*                                                                    */
/* Program Name: program1                                             */
/* Author:       Tommy Lokey                                          */
/* Course:       CS 227, Data Structures and Algorithms               */
/* Date Written: September 2, 2018                                    */
/*                                                                    */
/**********************************************************************/

/**********************************************************************/
/*                                                                    */
/* I pledge  all of the lines  in this C program  are my own original */
/* work and that none of the lines in this C program have been copied */
/* from anyone else, unless I was specifically authorized to do so by */
/*                        my CS227 instructor.                        */
/*                                                                    */
/*                                                                    */
/*                      Signed: _____________________________________ */
/*                                           (signature)              */
/*                                                                    */
/*                                                                    */
/**********************************************************************/

/**********************************************************************/
/*                                                                    */
/* This program asks the user for two wholes numbers, it then sums    */
/* the range of the two whole numbers. It then displays the sum.      */
/*                                                                    */
/**********************************************************************/

#include <stdio.h> /* printf, scanf                                   */

/**********************************************************************/
/*                         Symbolic Constants                         */
/**********************************************************************/
#define COURSE_NUMBER  "CS227"    /* PCC assigned course number       */
#define PROGRAM_NUMBER 1          /* Teacher assigned program number  */
#define USER_NAME      "Lokey" /* The Programmer's username        */

/**********************************************************************/
/*                        Function Prototypes                         */
/**********************************************************************/

void print_heading();
/* Print the program heading*/
void get_range(int *p_low_number, int *p_high_number);
int sum_range(int low_number, int high_number);

/**********************************************************************/
/*                         Main Function                              */
/**********************************************************************/
int main()
{
    int low_number,  /* Minimum number entered by user                 */
        high_number; /* Maximum number entered by user                 */

     /* Print the program heading                                       */
     printf("\n\n\n\n\n\n");
     print_heading();
     get_range(low_number, high_number);
     printf("\nThe sum of all you numbers between %d and", low_number);
     printf("%d (inclusively) is %d", high_number,
      sum_range(low_number, high_number));
     printf("\nThanks for your range summing. Have a nice day! ;-)");
     return 0;
    }


   /**********************************************************************/
   /*                   Print the program heading                        */
   /**********************************************************************/
   void print_heading()
   {
   printf("\n========================================================");
   printf("\n                Program Number: %d",     PROGRAM_NUMBER);
   printf("\n                Programmer: %s",         USER_NAME);
   printf("\n                PCC Course Number: %s",  COURSE_NUMBER);
   printf("\n========================================================");
   printf("\nI'll sum whole numbers in a number range (inclusively)");
   printf("\n--------------------------------------------------------");
   return;
   }

    /**********************************************************************/    
    /*                        Get Range Function                          */
    /**********************************************************************/
    void get_range(int *p_low_number, int *p_high_number)
    {
     printf("\nEnter a range of whole numbers now, lower number first:");
     printf("\n  What is your small number: ");
     scanf(" %d", p_low_number);
     printf("\n  Give your large number: ");
     scanf(" %d", p_high_number);
     return;
    }

    /**********************************************************************/
    /*                        Sum Range Function                          */
    /**********************************************************************/
    int sum_range(int low_number, int high_number)
    {
      int range_counter = 0;

      for(low_number; low_number <= high_number; low_number++)
    {
      range_counter = range_counter + low_number;
    }
    return range_counter;
 }

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Функция get_range() ожидает два указателя. Это потому, что он будет использовать эти указатели для присвоения значений переменным из другой функции.

Ваш профессор ожидает, что вы будете использовать эту функцию для чтения двух переменных, которые объявлены в вас main(), очевидно. Таким образом, вы должны взять адресов этих переменных и передать их get_range(), а не их значениям.

0 голосов
/ 07 сентября 2018

get_range(low_number, high_number); => get_range(&low_number, &high_number);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...