TODOPIC
Lenguajes de programación para PC => C, C#, C++ => Mensaje iniciado por: migsantiago en 26 de Octubre de 2009, 15:16:34
-
Hola
Estoy reescribiendo una librería de C++ hacia C# y me encuentro con esta línea...
double wtemp, wr, wpr, wpi, wi, theta, tempr, tempi;
...
wr=(wtemp=wr)*wpr-wi*wpi+wr;
¿Qué está pasando con esos paréntesis? :shock: :z)
-
Supongo q solo esta haciendo una asignacion en la misma linea. Equivale a:
wtemp=wr;
wr=wtemp*wpr-wi*wpi+wr;
saludos!
-
También pensé en eso pero... para qué ponerlo de tal forma... como si los "enters" gastaran tanta memoria :D
Si alguien le ve un significado diferente porfas que nos avise. :mrgreen:
-
Pues ni la menor idea, probé tu código tanto en C++ como en C# y en los dos funcionó sin problemas
#include <iostream>
using namespace std;
int main()
{
double wtemp, wr, wpr, wpi, wi, theta, tempr, tempi;
wtemp = 10.345;
wr =10.54;
wpr= 30.0;
wpi=5.43;
wi=56.32;
theta=0.4566;
tempr=0;
tempi=0;
wr=(wtemp=wr)*wpr-wi*wpi+wr;
cout<<wr<<endl;
return 0;
}
$g++ ejj.cpp -o ejj
$./ejj
20.9224
$
using System;
using System.IO;
class ejj
{
public static void Main (string[] args)
{
double wtemp, wr, wpr, wpi, wi, theta, tempr, tempi;
wtemp = 10.345;
wr =10.54;
wpr= 30.0;
wpi=5.43;
wi=56.32;
theta=0.4566;
tempr=0;
tempi=0;
wr=(wtemp=wr)*wpr-wi*wpi+wr;
Console.WriteLine(wr);
}
}
$gmcs ejj.cs
$./ejj
20.9224
$
Más bien sería que mostraras el error que te marca el compilador, porque así de buenas a primeras no se ve nada raro en la parte del código que mostraste.
-
Gracias por probarlo Tsk.
El compilador no me muestra error... todo lo compila bien, solo que se veía raro y quería estar seguro del porqué usar esa parte.