title: Using a passed by reference struct variable in C
body: <p>I have a basic pointer question.
  I have some code like this:
  Please let me know if anything is wrong in the following code:</p>
  
  <pre><code>struct abc {
    int a;
    int b;
  };
  
  void func2(int*); // defined elsewhere
  
  void func1 (struct abc *p1)
  {
    struct abc var1 = *p1; // ======&gt; Can I do this ? 
  
    func2(&amp;var1.b);
    func2(&amp;p1-&gt;b);      // =========&gt; Which of these 2 is right ? 
  }
  </code></pre>