On Monday, 25 January 2021 at 17:38:21 UTC, Rempas wrote:
On Monday, 25 January 2021 at 10:33:14 UTC, Mike Parker wrote:
On Monday, 25 January 2021 at 09:16:11 UTC, Rempas wrote:
[...]
The * has a different meaning for scanf than for printf ([1]
vs [2]).
There's also the issue that a string is immutable(char)[].
If you really, really, really, must use scanf:
```
char[bufSize] buf;
scanf("%s", buf.ptr);
```
But please don't. This is D, not 1990s C.
[1] https://www.cplusplus.com/reference/cstdio/scanf/
[2] https://www.cplusplus.com/reference/cstdio/printf/
Thanks! Actually for some reason. It won't accept a char[size].
I created a heap allocated (with pureFree and pureMalloc)
chrar*, then used fgets() and created an empty string and
looped through the result adding one by one character until the
'\n' which is not included.
char[buffsize] works if buffsize is a compile time constant. Or
just char[1024]. İt is a static array, and it's size must be
defined at compile time.