我有一个函数,它添加给定的参数并打印结果。如何更改数据类型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