Home > Back-end >  C I cant get my function to run in my program
C I cant get my function to run in my program

Time:01-30

The Function won't initiate can someone help? When I run it in the debugger program skips over function and I don't know why?

#include <iostream>

 using namespace std;

int size_array= 0;
int *data_array;
void sorting(int *[], int);


int main()
{
cout<<"enter in array size \n";
 cin>>size_array;
int *data_array=new int(size_array);

 for(int i=0;i<size_array;i  )
  {
   cout<<"enter number "<<i 1<<endl;
   cin>>data_array[i];
  }
 **int sorting(int data_array, int size_array);**

for (int i=0; i<size_array;i  )
  {
    cout<<data_array[i]<<endl;
  }

return 0;
}

CodePudding user response:

The marked code is simply declaring the function, not calling it.

Also, your data_array is a pointer to a single int whose value is initialized as size_array. But you want an array of size_array number of ints instead.

Try this:

#include <iostream>
using namespace std;

void sorting(int[], int);

int main()
{
    int size_array = 0;
    cout << "enter in array size \n";
    cin >> size_array;
    int *data_array = new int[size_array];

    for(int i = 0; i < size_array; i  )
    {
        cout << "enter number " << i 1 << endl;
        cin >> data_array[i];
    }

    sorting(data_array, size_array);

    for (int i = 0; i < size_array; i  )
    {
        cout << data_array[i] << endl;
    }

    delete[] data_array;
    return 0;
}

void sorting(int data_array[], int size_array)
{
    // sort data_array as needed...
}
  •  Tags:  
  • Related