#include <stdio.h>
#include <stdlib.h>
int sq(int x) {
return x*x;
}
int main(int argc, char *argv[]) {
int i;
for (i = 1; i < argc; i++) {
int x = atoi(argv[i]);
int sx = sq(x);
printf("sq(%d) = %d\n", x, sx);
}
return 0;
}
结论:这个程序是一个很简单的求平方的程序,由运行结果可知,小一点的数,求平方后结果都对,数达到一定大之后,就会出错,这是因为在机器内部,会给这个数分配一定大小的内存,当这个空间满的时候,数据就会溢出,然后运行结果就会出错。