elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
07 Septiembre 2008, 07:23  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderador: ®®)
| | |-+  problema, sustitución de un símbolo dentro de una cadena
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: problema, sustitución de un símbolo dentro de una cadena  (Leído 235 veces)
Ceprey

Desconectado Desconectado

Mensajes: 2


Ver Perfil
problema, sustitución de un símbolo dentro de una cadena
« en: 15 Abril 2008, 16:22 »

Hola a todos, estoy aprendiendo C++, y no entiendo, por qué no puedo sustituir un el símbolo ´i´ por la ´o´ de esta manera. ¿Hay una función aparte para eso? El compilador no comunica errores, el error se produce después de la ejecución. Ya sé, cómo se puede hacer lo mismo con una cadena estática, pero parece que sigo sin entender algo importante de los punteros, me gustaría aclararlo o, de no ser posible, en qué apartados de manuales se podría leer precisamente sobre este problema.

Código:
#include <iostream>     
using namespace std;     
     
     
     
void main()   

    char* cad1 = "Kiligramo"; 
    *(cad1+3)='o'; 
    cout<<cad1<<endl; 
 
 
En línea
E0N
Lab &
Colaborador

Desconectado Desconectado

Mensajes: 2.616



Ver Perfil WWW
Re: problema, sustitución de un símbolo dentro de una cadena
« Respuesta #1 en: 15 Abril 2008, 17:17 »

A mi asi me funciona:

Código:
#include <iostream>     
using namespace std;             
     
void main()   

    char* cad1 = "Kiligramo"; 
    cad1[3]='o'; 
    cout<<cad1<<endl; 
}

Salu2
En línea
Thor

Desconectado Desconectado

Mensajes: 1.199


Ver Perfil
Re: problema, sustitución de un símbolo dentro de una cadena
« Respuesta #2 en: 15 Abril 2008, 18:18 »

He probado tu código Ceprey y me funciona bien en MVC++ 6.0.

*(cad1+3) y cad1[3] es lo mismo. Claro que la segunda forma es mas legible.
En línea
Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.282


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: problema, sustitución de un símbolo dentro de una cadena
« Respuesta #3 en: 15 Abril 2008, 18:21 »

En realidad el problema seguramente sea que esa cadena esta en la sección .rdata (read only data) y entonces no podes modificarla  ;D Prueben con compiladores de este siglo  :xD
En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
Ceprey

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: problema, sustitución de un símbolo dentro de una cadena
« Respuesta #4 en: 15 Abril 2008, 20:13 »

Gracias a todo el mundo, menos mal digo, que funciona, pues, quiere decir que por fin voy comprendiendo mas o menos el tema de los punteros. Estoy utilizando MVC, como Thor, bueno, seguramente será un problema particular. Con el códigoya me apañaré... Gracias otra vez
En línea
Eternal Idol N&P

Desconectado Desconectado

Mensajes: 1.282


Assembly (x86/x64), C/C++, Kernel Mode (WDM/WDF)


Ver Perfil WWW
Re: problema, sustitución de un símbolo dentro de una cadena
« Respuesta #5 en: 16 Abril 2008, 11:25 »

Mientras el compilador/enlazador no ponga esa cadena en una sección de solo lectura te funcionara.
En línea

be closely tied to
(v.) = estar estrechamente ligado a
Ex: He had been wrapped up in a new project that was closely tied to the company's new growth.

"La economia nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de este"
Juan Domingo Peron
Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC