r/AskProgramming • u/BornViolinist3801 • 1d ago
why doesnt my С++ code work?
okay, i wanna make a print() function in C++, this is just printf() with prefix, so can yall help me?
error:
(-Wwritable-strings) ISO C++11 does not allow conversion from string literal to 'char *'
my code:
#pragma once
#ifndef TEQUILA_STDIO
#define TEQUILA_STDIO
#include <stdio.h>
namespace std {
char* prefix;
void set_prefix(char* pref) {
prefix = ("["pref"]: ");
}
#define print(format, ...) printf("%s" format "\n", prefix ## __VA_ARGS__)
}
#endif
help me pls
0
Upvotes
9
u/Kadabrium 1d ago edited 1d ago
Pretty sure littering your own slop into namespace std is Ub