problem about C
怎么运行的时候就出错
任务就是计算a+b
要求第一行输入整形N,然后下面接着输入N行,每一行有一对整型值,中间用空格隔开
输出分为N行,每一行输出一组a和b的值
例如:
输入:
2
1 5
4 4
输出:
6
8
- C/C++ code
#include<stdio.h>#include<stdlib.h>int main(){int a,b,i,N;int *p;scanf("%d",&N);p=(int*)malloc(N);for(i=0;i<N;i++){scanf("%d %d",&a,&b);p[i]=a+b;}for(i=0;i<N;i++) printf("%d\n",*p++); free(p); return 0;}
[解决办法]
malloc的内存不够,应该是p=(int*)malloc( sizeof(int) * N );还有最好在malloc之后判断下p是否等于NULL,以确定是否分配成功