<h2 >The <code>upc_alloc</code> function    </h2>

<h4>Synopsis</h4>
<pre> 
    #include &lt;upc.h&gt;
    shared void *upc_alloc(size_t nbytes);                          
</pre>
<p>
<h4>Description</h4>

<p>
The <code>upc_alloc  </code> allocates shared space of at least <code>nbytes</code> bytes with
affinity to the calling thread.
<p>
<code>upc_alloc</code> is similar to malloc() except that it returns a pointer-to-shared
value. It is not a <i>collective</i> function. If <code>nbytes</code> is zero, the result is a null
pointer-to-shared.

<p>&nbsp
<p>&nbsp
<p><a href="terms.html">Terms, definitions, and symbols</a><br>
<p><a href="index.html">Back to index of all UPC functions</a>
