我有一個函數,它添加給定的參數並打印結果。如何更改數據類型c
對於整數,根本沒有問題。用atoi改變字符串參數 - > int。
例如:./main 3 4 5將打印12.
但是,如果我有./main 4.5 6 5.5?我該如何在C中執行類似操作?函數如何「看」,它現在必須將參數類型改爲float?
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
int i , sum = 0;
for(i=1; i < (argc); ++i)
sum += atol(argv[i]);
printf("%d\n", sum);
return 0;
}
簡直不錯^^。我忘了添加錯誤的輸入問題。例如:./main 4 4 n 5 它應該給出一個提示,即有什麼不妥之處。而不是把n排除在等式之外。 – letter
@letter你應該接受答案,因爲它回答你的問題。 :)對於你忘了,只需使用'isdigit()'(或閱讀:http://stackoverflow.com/questions/16644906/how-to-check-if-a-string-is-a-number)。如果您仍有問題,請發佈一個新問題並與我分享鏈接。 :) – gsamaras