当前位置: 首页>>代码示例>>C++>>正文


C++ Token::GetDatoReal方法代码示例

本文整理汇总了C++中Token::GetDatoReal方法的典型用法代码示例。如果您正苦于以下问题:C++ Token::GetDatoReal方法的具体用法?C++ Token::GetDatoReal怎么用?C++ Token::GetDatoReal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Token的用法示例。


在下文中一共展示了Token::GetDatoReal方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Desapila

void
Round (Token ** Pila)
{

  Token *Operando = EntornoEjecucion_BuscaSimbolo (*Pila);
  if (Buzon.GetHuboError ())
    return;
  if (NoEsReal (Operando))
    {
      BorrarTokenSiEsVariable (Operando);
      return;
    }
  long double ValorDominio = Operando->GetDatoReal ();
  BorrarTokenSiEsVariable (Operando);

  long double ValorRetorno = floorl (fabsl (ValorDominio) + 0.5L) *
    (ValorDominio < 0 ? (-1.0L) : (1.0L));

  Token *TokenRetorno = ConsigueToken (ValorRetorno);
  if (Buzon.GetHuboError ())
    return;
  delete Desapila (Pila);
  Apila (Pila, TokenRetorno);
  return;

}
开发者ID:DX94,项目名称:freedfd,代码行数:26,代码来源:funcion.cpp

示例2: EvaluaPostfijo

void
VariableVector::EvaluaIndices ()
{
  ListaExpresiones & L = Lista;
  L.Reset ();
  unsigned int *Vec = VectorIndices;
  for (int j = 0; j < L.GetNItems(); ++j)
    {
      Token *t = EvaluaPostfijo (L.Itera());
      if (Buzon.GetHuboError ())
        return;
      if (t->GetTipoDato () != REAL)
        {
          //los indices deben ser enteros positivos
          // un error pa' el buzon
          delete t;
          Buzon.Error (INDICES);
          return;
        }
      long double v = t->GetDatoReal ();
      delete t;
      if (v < 0L || v > 65535L || (floor (v) != v))
        {
          // los indices deben ser enteros positivos
          //menores o iguales a 65535; un error pa' el buzon
          Buzon.Error (INDICES);
          return;
        }
      Vec[j] = v;
    }
}
开发者ID:DX94,项目名称:freedfd,代码行数:31,代码来源:variable-o-vector.cpp

示例3: if

void
Tangente (Token ** Pila)
{

  Token *Operando = EntornoEjecucion_BuscaSimbolo (*Pila);
  if (Buzon.GetHuboError ())
    return;
  if (NoEsReal (Operando))
    {
      BorrarTokenSiEsVariable (Operando);
      return;
    }

  long double ValorDominio = Operando->GetDatoReal ();
  BorrarTokenSiEsVariable (Operando);
  ValorDominio = Estado.AngulosEnGrados ? ValorDominio * M_PI / 180.0L :
    ValorDominio;
  long double ValorSeno = sinl (ValorDominio);
  long double ValorCoseno = cosl (ValorDominio);
  long double ValorRetorno;
  if (fabsl (ValorSeno) == 1.0L)
    {
      Buzon.Error (LLAMADO_DE_FUNCION_NO_VALIDO);
      return;
    }
  else if (ValorCoseno == 1.0L)
    ValorRetorno = 0.0L;
  else
    ValorRetorno = tanl (ValorDominio);
  if (Buzon.GetHuboError ())
    return;
  Token *TokenRetorno = ConsigueToken (ValorRetorno);
  if (Buzon.GetHuboError ())
    return;
  delete Desapila (Pila);
  Apila (Pila, TokenRetorno);
  if (FueraDeRango (TokenRetorno))
    return;
  return;
}
开发者ID:DX94,项目名称:freedfd,代码行数:40,代码来源:funcion.cpp


注:本文中的Token::GetDatoReal方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。