C++ snapshot 1
1.栈中内存问题,函数返回一个指针,这个指针不能是函数内部的变量,会被NULL掉,今天突然忘了这个,所以写一下,引以为戒。
#include <QCoreApplication> #include <qDebug> double add(double a,double b) { return a+b; } double (*p[3])(double,double); double* cacl(double *a) { for(int i = 0; i < 3 ; i++) { p[i] = add; a[i] = p[i](double(rand()),double(rand())); } return a; } int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); double ap[3]; double *ab; ab = cacl(ap); for(int i = 0; i < 3 ; i++) { qDebug()<<"i:"<<(ab[i]); } return a.exec(); }