1樓:匿名使用者
隱式轉換
當對簡單的值型別進行轉換時,如果是按照 byte,short,int,long,float,double從左到右(從短到長)進行轉換的時候,可以直接進行轉換(隱式轉換),不用做任何說明。簡單的**示例:
static void main(string args)
顯示轉換
依然是對值型別進行轉換時,從長位元組轉換成短位元組,直接轉換的話,編譯器會提示“無法將型別 *轉換為型別*,存在一個顯示轉換”,這時需要進行強制轉換(顯示轉換)。簡單的**示例:
static void main(string args)
每種資料型別都存在自身的範圍,例如byte型別的範圍是0~255,int型的範圍是0~65535,當int型轉換成byte型別時,如果超出了自身的範圍時會怎麼處理呢?看下**示例:
staticvoid main(string args)
這段**的執行結果 “b的值為0”,如果把a的值改為257,則b的值為1。結果是怎麼來的,編譯器會把256轉換成對應的二進位制,也就是100000000,當轉換成byte型別時(8位二進位制數),會長出8位的部分截掉,因此結果變成了0。
tostring()轉換
當把值型別轉換成字串型別時,可以直接呼叫值型別的方法tostring()進行轉換,另外tostring還可以將結果轉換成相應的進位制形式,簡單的**示例:
staticvoid main(string args)
static void main(string args)
parse方法
像int、long、float型別都有parse方法,可以將字串轉換為對應的資料型別,簡單的**例項:
staticvoid main(string args)
}convert類
convert有很多的轉換資料型別的方法,它將繼承自object型別的物件轉換為制定的型別,即convert.toint32()(還有對應其他型別的轉換)。另外的一種方法:
convert.changetype(object,type),這種方法在涉及到泛型時會顯現出優勢。
2樓:西門吹蠟燭
double a = 1.0;
string b = string.empty;
b = a.tostring();
b = convert.tostring(a);
b = a + "";
//上面三種方式都可以
3樓:
double d = 1.0;
string s = d+"";//或者d.tostring();
4樓:匿名使用者
.tostring()
c#中如何將double或string型別的資料轉換成decimal型別的資料,為什麼我再在用convert轉換時程式報錯?
5樓:
1、開啟編寫c語言的軟體codeblocks。
2、建立一個編寫c語言的檔案。
3、接下來開始編寫程式,首先是準備轉換中需要用到的變數和常量。
4、接著是使用clrscr函式限定開始轉換,並且給value賦值為自己想要轉換的double型資料。
5、再然後就是使用ecvt函式開始進行轉換,並且將轉換的結果付給字元陣列string。
6、接著就是使用printf函式輸出用於接收value值的字串string。
7、最後可以在控制檯上看到輸出的結果,正式value的值,不過這個值程式設計字串格式了。
6樓:匿名使用者
convert.todecimal 支援string 轉decimal 的
應該是你spedprice.text 的格式不對.
至少應該是d.d格式 而且不能有空格
傳進來 先應該用正則判斷下是否為數字.
7樓:匿名使用者
decimal.parse(spedprice.text)。就**效率來說,convert不如parse高。
“未將物件引用到例項”是你沒有例項化,就是程式不知道opt或spedprice是打哪來的,跟型別轉換沒關係。
8樓:匿名使用者
opt.productprice =decimal.parse(spedprice.text)
當然考慮到空值等因素,最好是些成方法:
decimal converttodcm(string strvalue)
catch
}然後 opt.productprice =converttodcm(spedprice.text);
c#中怎麼把double型別轉換成int型別
9樓:不不見不念
第一種 強制型別轉換
double d=1.5;
int i=(int)d;
這種方式的話採取的是截位,意思就是去掉小數點後的數字,比如1.8,結果是1,如果是1.9999999,那結果也是1;
第二種 使用round函式:
double d=1.6;
int i = math.round(d, 0);(保留0維小數就是取整)
第二個參數列示的是保留的小數位數,使用round函式是四捨五入,而不是截位,比如是1.4,那結果就是1,是1.5,結果就是2
10樓:匿名使用者
double a = 123.0;
int b = (int)a;
11樓:踏浪帥
int a=double.parse(***);
c#中如何把string型別轉換為double型別?
12樓:匿名使用者
隱式轉換
當對簡單的值型別進行轉換時,如果是按照 byte,short,int,long,float,double從左到右(從短到長)進行轉換的時候,可以直接進行轉換(隱式轉換),不用做任何說明。簡單的**示例:
static void main(string args)
顯示轉換
依然是對值型別進行轉換時,從長位元組轉換成短位元組,直接轉換的話,編譯器會提示“無法將型別 *轉換為型別*,存在一個顯示轉換”,這時需要進行強制轉換(顯示轉換)。簡單的**示例:
static void main(string args)
每種資料型別都存在自身的範圍,例如byte型別的範圍是0~255,int型的範圍是0~65535,當int型轉換成byte型別時,如果超出了自身的範圍時會怎麼處理呢?看下**示例:
staticvoid main(string args)
這段**的執行結果 “b的值為0”,如果把a的值改為257,則b的值為1。結果是怎麼來的,編譯器會把256轉換成對應的二進位制,也就是100000000,當轉換成byte型別時(8位二進位制數),會長出8位的部分截掉,因此結果變成了0。
tostring()轉換
當把值型別轉換成字串型別時,可以直接呼叫值型別的方法tostring()進行轉換,另外tostring還可以將結果轉換成相應的進位制形式,簡單的**示例:
staticvoid main(string args)
static void main(string args)
parse方法
像int、long、float型別都有parse方法,可以將字串轉換為對應的資料型別,簡單的**例項:
staticvoid main(string args)
}convert類
convert有很多的轉換資料型別的方法,它將繼承自object型別的物件轉換為制定的型別,即convert.toint32()(還有對應其他型別的轉換)。另外的一種方法:
convert.changetype(object,type),這種方法在涉及到泛型時會顯現出優勢。
13樓:
string shuzi2 = convert.todouble(shuzi1);
改double shuzi2 = convert.todouble(shuzi1);
14樓:匿名使用者
convert.todouble(shuzi1)是一個double型的資料,轉換為string需要新增tostring(),修改為:
string shuzi1 = "123.436";
string shuzi2 = convert.todouble(shuzi1).tostring();
或:double shuzi2 = convert.todouble(shuzi1);即可。
C語言中如何將double型資料轉換為陣列
思路是 先將double型的數字整數部分變為整型數字一一取到陣列中去 用迴圈整除可以做到,比如double i 123.456,就可以先把整數部分用j int i強制型別轉換取出放入整型變數j中,再依次取到陣列a中 a k i 10 i 10 這兩句語句就可以做到 不過數字是倒序的,最後輸出時要注意...
在c中如何將int型別強制轉換為double型別
deqr雲飄 double c 10.1 int a int c 10 方式方法有很多 只要意識到一點,當大型別轉換成小型別都有可能出錯,只需要型別一致 就可以進行運算了 double c 10.1 int a int c 10 方式方法有很多 只要意識到一點,當大型別轉換成小型別都有可能出錯,只需...
在sql中如何將日期型別轉換成文字型別,例如轉變成
噢喲 型別轉換 convert 要轉換成的資料型別,欄位名稱 例如convert varchar 100 col name convert int,order no 日期格式轉換 select convert varchar 100 getdate 112 20060516 select conve...