Re: 問一個c語言的技巧

看板Programming作者時間17年前 (2009/01/02 17:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《ilovev.bbs@bbs.badcow.com.tw (孤星)》之銘言: > 想請問一下.. > c語言中有一個函數atoi是把字串轉為整數.. > 這個我知道.. > 但是我常常會需要把字串中的某一些轉為整數.. > 那這個函數就不能使用了.. > 所以我只能利用讀出這個字串陣列的某一個整數字元後再將他-'0'.. > 使用這種方式來將它變成整數.. > 請問是有還有更好的方法.. > 因為如果要算出一長串算術時..程式會變得很亢長.. > 尤其在我字元陣列名稱設得比較常時.. > 如果自己另外設一個函數來轉換.. > 以複雜度來說..又會變得比較划不來.. 天下沒有白吃的午餐,轉換也就是這樣啊,所以還是自己寫個函數處理一下 需求即可。 > 所以我想請問.. > c語言是否有設其他的函數或者用其他方法來將字元陣列中某一個字元轉成整數的好方法.. > 謝謝.. 字元就用你說的方式即可,- '0' 的結果就是。 若是字串另外可用 sscanf 來處理也可以。 int num; char buf[]="1234"; sscanf(buf,"%d",&num); printf("%d\n",num); 不過你是說一般大數運算嗎?其實底層許多實做計算處理本來就需要花費不少 功夫寫作這類程式碼了 :) Java 就因為這樣提供 Bignum 提供解決該需求。 -- 如果真的愛一個作業系統 怎能不害怕不再能使用它 而我們必須接受現實 於是長大了 寂寞就是沒有了機會再用它 比沒有電腦還要寂寞 而那些點亮我們生命的作業系統 就彷彿電影中發生在暹邏的愛情故事 即使短暫使用也會刻骨銘心 To all the Linux that bring us to kernel. -- ※ Origin: SayYA 資訊站 <bbs.sayya.org> ◆ From: kendlee.sayya.org
文章代碼(AID): #19NTyJ00 (Programming)
文章代碼(AID): #19NTyJ00 (Programming)