Re: 如何將數字轉成字串
|
||||
---|---|---|---|---|
版主
|
試著使用 C18 所提供的 CLIB.o 的函數庫 atoi( ), atob( ), atol( ), atof( )
source code 在這裡有: C:\mcc18\src\traditional\stdclib 或可參考 w401 workshop 第六章的說明。
發表於: 2005/2/15 16:39
|
|||
|
Re: 如何將數字轉成字串
|
||||
---|---|---|---|---|
高級會員
|
如果我要將放在矩陣中已經變成字串的值
獨自拿出來變成數字可以嗎 假如 ARR[0]=5; ARR[1]=3; 我可以將ARR[0]中的5轉成數字嗎 還是一定要一整個ARR[]矩陣轉 還是有方法可以直接將我本來運算出來的35,分別拿出10位數的3和個位數的5來作判斷啊??
發表於: 2005/2/15 16:29
|
|||
|
Re: 如何將數字轉成字串
|
||||
---|---|---|---|---|
版主
|
這跟RAM的大小有關,一般只要陣列宣告不要太大或儘量將常數移往ROM的區域,一般是夠用的。
PICF18F6520有2k bytes 的 RAM。 詳細擺放變數到RAM的方法請參考W401 workshop 的第五章之說明。
發表於: 2005/2/15 15:08
|
|||
|
Re: 如何將數字轉成字串
|
||||
---|---|---|---|---|
高級會員
|
拍謝拍謝
我找到原因了 擺了個烏龍~~ 但是還是想請問18F6520有變數的限制嗎
發表於: 2005/2/15 14:43
|
|||
|
Re: 如何將數字轉成字串
|
||||
---|---|---|---|---|
版主
|
用union及struct的宣告來拆解浮點數將指數與小數分別轉換成ASCII code 後送出。
union FPvar { float FPNum; //floating point access struct { unsigned char Arg0; //argument byte 0 access unsigned char Arg1; //argument byte 1 access unsigned char Arg2; //argument byte 2 access unsigned char Exp; //exponent byte access } ByByte; } Foo; Foo.FPNum = 3.14159; Exponent = Foo.ByByte.Exp - 0x7F;
發表於: 2005/2/15 13:41
|
|||
|
如何將數字轉成字串
|
||||
---|---|---|---|---|
高級會員
|
unsigned char Temp_Array[5];
float Tempss = 27.5; void LCD_get(void) { itoa( Tempss , &Temp_Array[0] ); } 這樣是不是會將27.5放到Temp_Array裡面 我現在經過這樣出來的陣列是不是 [0]=2 [1]=7 我沒找到轉浮點數的~~itoa是將整數形態轉成字串 有再轉浮點數的嗎?? 還是有其其他比較好的方法可以使用~~ 希望各位大大幫幫忙謝謝
發表於: 2005/2/15 11:02
|
|||
|