[Programación]aviso: conversión obsoleta de una constante de cadena a ‘char*’ [-Wwrite-strings]
Federico Wiecko
fedewi en gmail.com
Vie Ago 17 15:58:28 ART 2012
2012/8/17 Horacio Castellini <horacio9573 en yahoo.com.ar>
>
>
> Acá te mando los fuentes...
>
> ferror.h
>
> //FERROR.H
> // Controlador de errores
> //
> #ifndef __FERROR_H
> #define __FERROR_H
> //
> //#pragma GCC diagnostic ignored "-Wwrite-strings"
> #include<iostream>
> #include<cstdlib>
> #include<cerrno>
> /*
>
> */
> //
>
> char const *algebra_error[]={
> "Taman~o incorrecto vector",
> "No hay memoria vector",
> "En igualdad vector dimensio'n no concordante",
> "Indice mal vector",
> "En suma vector dimensio'n no concordante",
> "En resta vector dimensio'n no concordante",
> "En producto escalar dimensio'n no concordante",
> "Error en norma vector",
> "Taman~o incorrecto matriz",
> "No hay memoria matriz",
> "En igualdad matriz dimensio'n no concordante",
> "Indice mal matriz",
> "En suma matriz dimensio'n no concordante",
> "En resta matriz dimensio'n no concordante",
> "En producto matriz dimensio'n no concordante",
> "Error en norma matriz",
> "En producto matriz-vector diemnsio'n no concordante",
> "Se detecto' SINGULARIDAD",
> "Solucio'n singular"
> };
> extern const char *sys_errlist[];
> //
> char* espacio=" "; (asignacion de una cadena stática a una variable no
> estática! )
>
***************************************************
solución: lo mismo que antes
char const *espacio=" ";
***************************************************
> //funcio'n cartel error
> void error(const char* s1, const char* s2)
> {
> std::cerr<<s1<<' '<<s2<<std::endl;
> std::cerr<<sys_errlist[errno]<<std::endl;
> std::cerr<<errno<<std::endl;
> exit(1);
> }
> //
> void _error(int k)
> {
> error(algebra_error[k],espacio);
> }
> //
> #endif /* __FERROR.H */
>
> ferror.cc
>
> #include<ferror.h>
> main(){
> int k;
> k=2;
> _error(k);
> return 0;
> }
>
> y el compilador me dice...
>
> c++ -I/home/hcaste/include ferror.cc -o error
> In file included from ferror.cc:1:0:
> /home/hcaste/include/ferror.h:38:15: aviso: conversión obsoleta de una
> constante de cadena a ‘char*’ [-Wwrite-strings]
>
>
g++ --version
g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> g++ -o ferror ferror.c -I. -Wall
> ./ferror
En igualdad vector dimensio'n no concordante
Success
0
Espero que solucione el problema Horacio, sino no sé que decirte ya que no
puedo replicarlo.
Suerte!
Federico .-
>
>
> _______________________________________________
> Programacion mailing list
> Programacion en lugro.org.ar
> http://lugro.org.ar/mailman/listinfo/programacion
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lugro.org.ar/pipermail/programacion/attachments/20120817/7d8cd695/attachment.htm>
Más información sobre la lista de distribución Programacion