Buffer Manipulation

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Buffer Manipulation.

Use these routines to work with areas of memory on a byte-by-byte basis.

Buffer-Manipulation Routines

Routine Use .NET Framework equivalent
_memccpy Copy characters from one buffer to another until given character or given number of characters has been copied System::Buffer::BlockCopy, System::String::Copy
memchr, wmemchr Return pointer to first occurrence, within specified number of characters, of given character in buffer Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.
memcmp, wmemcmp Compare specified number of characters from two buffers System::String::Compare, System::String::Equals
memcpy, wmemcpy, memcpy_s, wmemcpy_s Copy specified number of characters from one buffer to another System::Buffer::BlockCopy, System::String::Copy
_memicmp, _memicmp_l Compare specified number of characters from two buffers without regard to case System::String::Compare, System::String::Equals
memmove, wmemmove,memmove_s, wmemmove_s Copy specified number of characters from one buffer to another System::Buffer::BlockCopy
memset, wmemset Use given character to initialize specified number of bytes in the buffer System::Buffer::SetByte
_swab Swap bytes of data and store them at specified location Not applicable. To call the standard C function, use PInvoke. For more information, see Platform Invoke Examples.

When the source and target areas overlap, only memmove is guaranteed to copy the full source properly.

See Also

Run-Time Routines by Category