Does anyone know if the following cast operation will perform correctly? main() { SOME_STRUCT_TYPE *ptr; int num_chars; ... (char *)ptr += num_chars; ... } If the last line above were replaced by ptr = (char *)ptr + num_chars; it would perform as desired. Does casting work on an lvalue? David Silberberg (davids at stsci.edu)