:relfileprefix: ../../../../
[#boost-urls-string_token-arg-prepare]

= xref:boost.adoc[pass:[boost]]::xref:boost/urls.adoc[pass:[urls]]::xref:boost/urls/string_token.adoc[pass:[string_token]]::xref:boost/urls/string_token/arg.adoc[pass:[arg]]::prepare


Return a modifiable character buffer


== Synopsis

Declared in header `<https://www.github.com/boostorg/url/blob/develop/include/boost/url/grammar/string_token.hpp#L68[boost/url/grammar/string_token.hpp,window=blank_]>`

[source,cpp,subs="verbatim,macros,-callouts"]
----
virtual
char*
prepare(xref:std.adoc[std]::size_t n) = 0;
----

== Description


This function attempts to obtain a
character buffer with space for at
least `n` characters. Upon success,
a pointer to the beginning of the
buffer is returned. Ownership is not
transferred; the caller should not
attempt to free the storage. The
buffer shall remain valid until
`this` is destroyed.
[NOTE]

This function may only be called once.
After invoking the function, the only
valid operation is destruction.








