title: How do I call this function with the arguments (void (*store) (int*,int))?
body: <p>I'm new to c and not really familiar with pointers or how this method is setup to be called in main with these arguments. I have a bit of an understanding of pointer snow, but i'm still confused with one being in the method arguments. Do I pass in a pointer and an int? Do I need to pass in anything at all? Do I even need the main method or can I just run the program with is_little_endian as my main method?</p>
  
  <pre><code>#include "test_endian.h"
  #include &lt;stdio.h&gt;
  
  int is_little_endian(void (*store)(int*,int)) {
    int x;
  
    unsigned char *byte_ptr = (unsigned char*)(&amp;x);
  
    store(&amp;x, 1);
  
    printf("the address for x is %u\n", *byte_ptr);
  
    return 0;
  }
  
  
  int main() {
  
  }
  </code></pre>