consulta sobre ejercicio 4 p0

consulta sobre ejercicio 4 p0

de Hugo Galbarini -
Número de respuestas: 2

hola!

estoy tratando de asignar esta frase "Hola como estas" al puntero pfrase pero me da este error en compilacion:

----

cantLetraPunt.cpp:18:11: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings]

        pfrase = "Hola como estas";

                 ^

1 warning generated.

----

lineas de codigo:

char *pfrase = new char[100];

pfrase = "Hola como estas";

----

como seria la manera correcta de asignar  "Hola como estas" al lugar de memoria que apunta el puntero *pfrase?

En respuesta a Hugo Galbarini

Re: consulta sobre ejercicio 4 p0

de Mateo Fontoura Abelenda -
Podrías usar:

const char *pfrase = "Hola como estas";

Por lo que estuve leyendo los literales de cadena como "Hola como estas" son constantes y lo estas declarando como char, es decir que se debería poder modificar, pero eso no es posible, ya que es una constante. Entonces podrías reservar la memoria como estás haciendo y luego:

strcpy(pfrase, "Hola como estas"); //librería #include
luego para modificar, podrías hacer así:

pfrase[0] = 'h';