.TH LIBSIMPLE_RAWMEMELEM_INV 3 2018-11-25 libsimple .SH NAME libsimple_rawmemelem_inv \- find different aligned byte string in memory .SH SYNOPSIS .nf #include void *libsimple_rawmemelem_inv(const void *\fIhaystack\fP, const void *\fIneedle\fP, size_t \fIwidth\fP); #ifndef rawmemelem_inv # define rawmemelem_inv libsimple_rawmemelem_inv #endif .fi .PP Link with .IR \-lsimple . .SH DESCRIPTION The .BR libsimple_rawmemelem_inv () function scans the memory segment .IR haystack , for the first occurence of a byte string different from .I needle with the size .IR width , and with an offset equivalent to zero modulo .IR width . .PP The .BR libsimple_rawmemchr () function assumes there is at least one occurence, its behaviour is undefined if this is not the case. .PP The comparison is case-sensitive. .SH RETURN VALUE The .BR libsimple_rawmemelem_inv () function returns the pointer .I s with a minimal offset such that .IR memcmp(r,needle,width) , where .I r is the returned pointer, and such that the offset is equivalent to zero modulo .IR width . If no such offset exists, the behaviour is undefined. .SH ERRORS The .BR libsimple_rawmemelem_inv () function cannot fail. .SH ATTRIBUTES For an explanation of the terms used in this section, see .BR attributes (7). .TS allbox; lb lb lb l l l. Interface Attribute Value T{ .BR libsimple_rawmemelem_inv () T} Thread safety MT-Safe T{ .BR libsimple_rawmemelem_inv () T} Async-signal safety AS-Safe T{ .BR libsimple_rawmemelem_inv () T} Async-cancel safety AC-Safe .TE .SH EXAMPLES None. .SH APPLICATION USAGE None. .SH RATIONALE None. .SH FUTURE DIRECTIONS None. .SH NOTES None. .SH BUGS None. .SH SEE ALSO .BR libsimple_rawmemelem (3), .BR libsimple_rawmemrelem_inv (3), .BR libsimple_memelem_inv (3), .BR libsimple_rawmemchr_inv (3)