Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.


The WritableBytesLength property specifies the number of bytes of an array, or buffer pointed to by a pointer, that can be legally written. This property is allowed on Pre and Post attributes and can be used on pointer or array data types.

The value of this property is specified in terms of another buffer parameter. The number of elements in the buffer parameter is used to determine the actual number of valid elements of an array, or of a buffer pointed to by a pointer.

The following sample code shows how to set the value of the WritableBytesLength property by using a buffer parameter:

// C
#include <CodeAnalysis\SourceAnnotations.h>
void f([SA_Pre(WritableBytesLength="c") ] char *pc, char c[]);

// C++
#include <CodeAnalysis\SourceAnnotations.h>
using namespace vc_attributes;
void f([Pre(WritableBytesLength="c") ] char *pc, char c[]);

Community Additions

© 2015 Microsoft