ExprLong.3
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:4k
源码类别:

通讯编程

开发平台:

Visual C++

  1. '"
  2. '" Copyright (c) 1989-1993 The Regents of the University of California.
  3. '" Copyright (c) 1994-1997 Sun Microsystems, Inc.
  4. '"
  5. '" See the file "license.terms" for information on usage and redistribution
  6. '" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  7. '" 
  8. '" RCS: @(#) $Id: ExprLong.3,v 1.6.2.1 2005/05/03 17:53:41 dgp Exp $
  9. '" 
  10. .so man.macros
  11. .TH Tcl_ExprLong 3 7.0 Tcl "Tcl Library Procedures"
  12. .BS
  13. .SH NAME
  14. Tcl_ExprLong, Tcl_ExprDouble, Tcl_ExprBoolean, Tcl_ExprString - evaluate an expression
  15. .SH SYNOPSIS
  16. .nf
  17. fB#include <tcl.h>fR
  18. .sp
  19. int
  20. fBTcl_ExprLongfR(fIinterp, string, longPtrfR)
  21. .sp
  22. int
  23. fBTcl_ExprDoublefR(fIinterp, string, doublePtrfR)
  24. .sp
  25. int
  26. fBTcl_ExprBooleanfR(fIinterp, string, booleanPtrfR)
  27. .sp
  28. int
  29. fBTcl_ExprStringfR(fIinterp, stringfR)
  30. .SH ARGUMENTS
  31. .AS Tcl_Interp *booleanPtr
  32. .AP Tcl_Interp *interp in
  33. Interpreter in whose context to evaluate fIstringfR.
  34. .VS 8.4
  35. .AP "CONST char" *string in
  36. .VE
  37. Expression to be evaluated.  
  38. .AP long *longPtr out
  39. Pointer to location in which to store the integer value of the
  40. expression.
  41. .AP int *doublePtr out
  42. Pointer to location in which to store the floating-point value of the
  43. expression.
  44. .AP int *booleanPtr out
  45. Pointer to location in which to store the 0/1 boolean value of the
  46. expression.
  47. .BE
  48. .SH DESCRIPTION
  49. .PP
  50. These four procedures all evaluate the expression
  51. given by the fIstringfR argument
  52. and return the result in one of four different forms.
  53. The expression can have any of the forms accepted by the fBexprfR command.
  54. Note that these procedures have been largely replaced by the
  55. object-based procedures fBTcl_ExprLongObjfR, fBTcl_ExprDoubleObjfR,
  56. fBTcl_ExprBooleanObjfR, and fBTcl_ExprObjfR.
  57. Those object-based procedures evaluate an expression held in a Tcl object
  58. instead of a string.
  59. The object argument can retain an internal representation
  60. that is more efficient to execute.
  61. .PP
  62. The fIinterpfR argument refers to an interpreter used to
  63. evaluate the expression (e.g. for variables and nested Tcl
  64. commands) and to return error information.
  65. .PP
  66. For all of these procedures the return value is a standard
  67. Tcl result: fBTCL_OKfR means the expression was successfully
  68. evaluated, and fBTCL_ERRORfR means that an error occurred while
  69. evaluating the expression.
  70. If fBTCL_ERRORfR is returned then
  71. the interpreter's result will hold a message describing the error.
  72. If an error occurs while executing a Tcl command embedded in
  73. the expression then that error will be returned.
  74. .PP
  75. If the expression is successfully evaluated, then its value is
  76. returned in one of four forms, depending on which procedure
  77. is invoked.
  78. fBTcl_ExprLongfR stores an integer value at fI*longPtrfR.
  79. If the expression's actual value is a floating-point number,
  80. then it is truncated to an integer.
  81. If the expression's actual value is a non-numeric string then
  82. an error is returned.
  83. .PP
  84. fBTcl_ExprDoublefR stores a floating-point value at fI*doublePtrfR.
  85. If the expression's actual value is an integer, it is converted to
  86. floating-point.
  87. If the expression's actual value is a non-numeric string then
  88. an error is returned.
  89. .PP
  90. fBTcl_ExprBooleanfR stores a 0/1 integer value at fI*booleanPtrfR.
  91. If the expression's actual value is an integer or floating-point
  92. number, then they store 0 at fI*booleanPtrfR if
  93. the value was zero and 1 otherwise.
  94. If the expression's actual value is a non-numeric string then
  95. it must be one of the values accepted by fBTcl_GetBooleanfR
  96. such as ``yes'' or ``no'', or else an error occurs.
  97. .PP
  98. fBTcl_ExprStringfR returns the value of the expression as a
  99. string stored in the interpreter's result.
  100. .SH "SEE ALSO"
  101. Tcl_ExprLongObj, Tcl_ExprDoubleObj, Tcl_ExprBooleanObj, Tcl_ExprObj
  102. .SH KEYWORDS
  103. boolean, double, evaluate, expression, integer, object, string