<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div id="yui_3_16_0_1_1439823760126_3446"><span id="yui_3_16_0_1_1439823760126_4275">But we're dealing with an array of t_words, so onset*sizeof(t_word) is what we want anyway, no?</span></div><div id="yui_3_16_0_1_1439823760126_4276"><br><span></span></div><div id="yui_3_16_0_1_1439823760126_4277"><span>-Jonathan</span></div>  <br><div class="qtdSeparateBR"><br><br></div><div style="display: block;" class="yahoo_quoted"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;"> <div dir="ltr"> <font face="Arial" size="2"> On Monday, August 17, 2015 10:55 AM, Claude Heiland-Allen <claude@mathr.co.uk> wrote:<br> </font> </div>  <br><br> <div class="y_msg_container">On 17/08/15 15:36, Jonathan Wilkes via Pd-list wrote:<br clear="none">> Hi list,Wondering if someone will give me a free lesson in C programming.<br clear="none">> In g_traversal.c, there's some code to retrieve a float from a t_word* vec.  It looks like this:<br clear="none">> *(t_float *)(((char *)vec) + onset));<br clear="none">> Why does vec need to be cast to char*?  t_word has to be as big as the largest member of the union, and the largest member has to be the same size as char*, right?  (Otherwise we'd have big problems...)<br clear="none"><br clear="none">aiui pointer arithmetic is in increments of sizeof(pointee)<br clear="none">if onset is measured in bytes (I don't know if it is in this case, but <br clear="none">it looks likely), then you need to have a pointer to bytes for the <br clear="none">addition to be meaningful.  vec is already a pointer, but adding onset <br clear="none">to a t_word* would offset the address by onset*sizeof(t_word) bytes<div class="yqt8925130215" id="yqtfd40309"><br clear="none"><br clear="none"><br clear="none">_______________________________________________<br clear="none"><a shape="rect" ymailto="mailto:Pd-list@lists.iem.at" href="mailto:Pd-list@lists.iem.at">Pd-list@lists.iem.at</a> mailing list<br clear="none">UNSUBSCRIBE and account-management -> <a shape="rect" href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br clear="none"></div><br><br></div>  </div> </div>  </div></div></body></html>