SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: sandra68 en Domingo 3 de Julio de 2005, 23:29

Título: Que Lio! Alguien Sabe Pasar Esto De Visual A C++?
Publicado por: sandra68 en Domingo 3 de Julio de 2005, 23:29
Tengo que pasar un pequeño codigo de visual basic a c++. Pero no entiendo casi ninguna linea, vaya lio!   :(  Alguien me podria ayudar?? Se que s dificil. mil gracias. El codigo es este:


Function CRC32(ByRef trama As String) As String


Dim dwCrc32 As Long
Dim i As Long

dwCrc32 = &HFFFFFFFF

Dim j As Integer, h As Integer

For j = 1 To Len(trama)
'i = CLng(Asc(Mid(trama, j, 1))) Xor ((dwCrc32) And &HFF&)

For h = 1 To 8
If (i And 1) Then
i = ((i And &HFFFFFFFE) / 2) Xor &HEDB88320
Else
i = (i And CLng(&HFFFFFFFE)) / 2
End If
Next h
dwCrc32 = ((dwCrc32 And &HFFFFFF00) / (2 ^ ) Xor i
Next j

'convertimos a representación hexadecimal con 8 digitos
Dim repHex As String
repHex = Hex$(dwCrc32)
If Len(repHex) = 8 Then
CRC32 = repHex
Else
'Colocamos símbolos "0" al principio de la cadena
CRC32 = String$(8 - Len(repHex), "0") & repHex
End If

End FunctionDE
Título: Re: Que Lio! Alguien Sabe Pasar Esto De Visual A C++?
Publicado por: JuanK en Lunes 4 de Julio de 2005, 00:32
no le veo nada dificil, cual es le problema que tienes para hacerlo?
Título: Re: Que Lio! Alguien Sabe Pasar Esto De Visual A C++?
Publicado por: sandra68 en Lunes 4 de Julio de 2005, 09:50
Juank, ayudame. El problema es que se muy poco de c++ y me es casi imposible pasar eso que esta en visual basic.
Por ejemplo esto  i = CLng(Asc(Mid(trama, j, 1))) Xor ((dwCrc32) And &HFF&)
en c++ no se como ponerlo. Creo que Xor es ^ en c++ no?

y en esta linea: dwCrc32 = ((dwCrc32 And &HFFFFFF00) / (2 ^ 8) Xor i . En visual basic ^ quiere decir exponente, pero como pongo 2 ^ 8 en c++?

mil Gracias
Título: Re: Que Lio! Alguien Sabe Pasar Esto De Visual A C++?
Publicado por: sandra68 en Lunes 4 de Julio de 2005, 10:39
y esta trama:  

For j = 1 To Len(trama)
     CLng(Asc(Mid(trama, j, 1)))
next j

en visual basic, estamos haciendo una subcadena letra por letra de la variable "trama". Luego cogemos el numero ascii de esa letra y lo pasamos a long. -¿alguien sabe hacer esto en c++? gracias
Título: Re: Que Lio! Alguien Sabe Pasar Esto De Visual A C++?
Publicado por: Bazo en Domingo 10 de Julio de 2005, 20:05
lo que entendi es q quieres que una cadena que contiene la palabra "trama" imprima por pantalla el ascii de cada valor? si es eso ahi lo tienes y añadi el total porcia lo necesitas.
espero que te sirva

#include <iostream.h>
#include <string.h>
#include <ctype.h>
char cadena []="trama";        //cadena "trama"
int ascii,total;              // variable entera donde se guardara el ascii
void main ()
{
   for (int i=0;i<=4;i++)
   {
      ascii= toascii (cadena );            //asigna a la variable ascii el valor de la tabla ascii
      cout<<cadena <<" = "<<ascii<<endl;   //imprime el valor
      total=total+ascii;                      // suma cada uno de los valores ascii
   }
   cout<<"Total = "<<total<<endl;              //imprime La suma de los valores ascii
}




Bazo
Título: Re: Que Lio! Alguien Sabe Pasar Esto De Visual A C++?
Publicado por: nostromo en Martes 9 de Agosto de 2005, 00:08
Holas

Entendí lo siguiente, es como pasar de Visual Basic a C++, es decir, debe tener EditBox, Label, CommandButton, etc, esto pasar a una ventana GUI en C++, en VisualC++ dicen que existe un conversor de aplciaciones en Visual Basic Versión 4, 5 y 6 a VC++, pero hasta ahora no se donde se encuentra ni como utilizarlo.

Yó creo que la pregunta esta por esos lados...

Nos vemos.