Warning: mysqli::__construct(): (HY000/1203): User howardkn already has more than 'max_user_connections' active connections in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\includes\artfuncs.php on line 21
Failed to connect to MySQL: (1203) User howardkn already has more than 'max_user_connections' active connections
Warning: mysqli::query(): Couldn't fetch mysqli in D:\Inetpub\vhosts\howardknight.net\al.howardknight.net\index.php on line 66
Article <20241220123840.0000184d@yahoo.com>
Deutsch   English   Français   Italiano  
<20241220123840.0000184d@yahoo.com>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Michael S <already5chosen@yahoo.com>
Newsgroups: comp.lang.c
Subject: Re: Something like string-streams existing in "C"?
Date: Fri, 20 Dec 2024 12:38:40 +0200
Organization: A noiseless patient Spider
Lines: 44
Message-ID: <20241220123840.0000184d@yahoo.com>
References: <vjvsvb$2i07u$1@dont-email.me>
	<vk179b$2s9oa$1@bluemanedhawk.eternal-september.org>
	<20241219114135.611@kylheku.com>
	<20241219220435.00001140@yahoo.com>
	<20241219140545.869@kylheku.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Injection-Date: Fri, 20 Dec 2024 11:38:44 +0100 (CET)
Injection-Info: dont-email.me; posting-host="cd72757de727eb0edb19146209da36f1";
	logging-data="3577881"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+K0T6daK6hgp43g4m4sOhEBZanFXFsrmg="
Cancel-Lock: sha1:XnpW1+fz4es4VD6iV6ezZAxp8wI=
X-Newsreader: Claws Mail 4.1.1 (GTK 3.24.34; x86_64-w64-mingw32)
Bytes: 2392

On Thu, 19 Dec 2024 22:06:09 -0000 (UTC)
Kaz Kylheku <643-408-1753@kylheku.com> wrote:

> On 2024-12-19, Michael S <already5chosen@yahoo.com> wrote:
> > On Thu, 19 Dec 2024 19:47:28 -0000 (UTC)
> > Kaz Kylheku <643-408-1753@kylheku.com> wrote:
> > =20
> >> On 2024-12-19, BlueManedHawk <bluemanedhawk@invalid.invalid>
> >> wrote: =20
> >> > The =E2=80=98asprintf=E2=80=99 subroutine is standardized by POSIX.1=
-2024,
> >> > meaning that you can use it now and blame somebody else if it
> >> > doesn't work. If you    =20
> >>=20
> >> Regardless of how it is made visible, you can detect it via a
> >> compile test in a configure script, and provide your own if it
> >> wasn't found:
> >>=20
> >> #if !HAVE_ASPRINTF
> >>=20
> >> int asprintf(char **out, const char *fmt, ...)
> >> {
> >>   ... // more or less trivial to implement using malloc, realloc
> >> and vsprintf =20
> >
> > Don't you mean, vsnprintf ? =20
>=20
> That detail will become obvious when you try to implement it.
>=20

It sounds like Janis would prefer different API.

struct string_buffer {
  char* ptr;
  size_t len;
  size_t cap;
};
int append_printf(struct string_buffer*, , const char *fmt, ...);

Implementation is as trivial as asprintf.