기본 콘텐츠로 건너뛰기

[C++ Builder] TryStrToFloat, TryStrToInt (문자열을 숫자형으로 변환)

       

double a;

int nA;
UnicodeString b = "12.4";
UnicodeString c = "-";

UnicodeString d = "";
UnicodeString e = "CELL";
UnicodeString f = "NO";
UnicodeString g = NULL;



if(TryStrToFloat(b, a) == true) Memo1->Lines->Add(FormatFloat("0.0", a));

if(TryStrToFloat(c, a) == true) Memo1->Lines->Add(FormatFloat("0.0", a));
else Memo1->Lines->Add("-1");



if(TryStrToInt(d, nA) == true) Memo1->Lines->Add(FormatFloat("0", nA));
else Memo1->Lines->Add("-1");

if(TryStrToInt(e, nA) == true) Memo1->Lines->Add(FormatFloat("0", nA));
else Memo1->Lines->Add("-1");

if(TryStrToInt(f, nA) == true) Memo1->Lines->Add(FormatFloat("0", nA));
else Memo1->Lines->Add("-1");

if(TryStrToInt(g, nA) == true) Memo1->Lines->Add(FormatFloat("0", nA));
else Memo1->Lines->Add("-1");

==> NULL to 0 (NULL은 0으로 변환)


댓글

이 블로그의 인기 게시물

C# - Serial Port ASCII/HEX Format

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO.Ports; namespace SerialTest1 {     public partial class Form1 : Form     {         delegate void MyDelegate();      //델리게이트 선언(크로스 쓰레드 해결하기 위한 용도)         bool SendForamt = true;          // true : ASCII   false : HEX         bool ReceiveFormat = true;       // true : ASCII   false : HEX         public Form1()         {             InitializeComponent();          ...

C# - Windows Form 에 있는 control 찾기

// 아래 코드는 form 의 최상위 control만 찾을 수 있음. // panle, groubbox ... 내부에 있는 control은 찾지 못함. Control GetControlByName(string Name) {     foreach (Control c in this.Controls)         if (c.Name == Name)             return c;     return null; } // form 의 모든 control을 찾을 수 있음. string name = "btnBit" + (i + 1).ToString("D2"); var tmpBtn = this.Controls.Find(name, true).FirstOrDefault(); if (tmpBtn != null) {     if (value == 1) tmpBtn.BackColor = Color.Lime;     else tmpBtn.BackColor = Color.Gray; }