[ Foro de C++ ]

Error: ISO C++ forbids converting a string constant to 'char*' [-Wpedantic]

03-Aug-2019 00:56
Invitado (Valentin)
1 Respuestas

1


al intentar compilar el archivo, me aparece el error mencionado en el título. error: ISO C++ forbids converting a string constant to 'char' [-Wpedantic]* en la línea 28 del fichero. Adjunto el código.

   #include <stdio.h>
#include <stdlib.h>
#include "sqlite3.h"

int main(int argc, char* argv[])
{
sqlite3 *db;
char *error = 0;
int res;
char *sql;

/* Open database */
res = sqlite3_open("prob.db", &db);
if (res)
{
   fprintf(stderr, "No se pudo abrir base de datos: %s\n", sqlite3_errmsg(db));
   exit(0);
}
else
{
   fprintf(stderr, "Base de datos OK\n");
}

sql = "CREATE TABLE events ("
   "'timestamp' DATETIME, "
   "'level' NUMBER, "
   "'type' NUMBER, "
   "'message' TEXT)"; //En esta linea figura el error

res = sqlite3_exec(db, sql, NULL, 0, &error);
if (res != SQLITE_OK)
{
   fprintf(stderr, "Error: %s\n", error);
   sqlite3_free(error);
}
else
{
   fprintf(stdout, "Tabla creada!\n");
}

sqlite3_close(db);

return 0;
}
Quisiera saber que es lo que puede estar ocasionando este problema. Muchas gracias


03-Aug-2019 00:58
Nacho Cabanes (+84)

Prueba a escribir la sentencia SQL en una única línea...






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)