以下为调用clapack库计算矩阵1范数的例程,注意在LAPACK中矩阵是column-major order。
#include <stdio.h>
#include <f2c.h>
#include <clapack.h>
#include <blaswrap.h>
/* 外部函数 */
extern doublereal dlange_(char *norm, integer *m, integer *n, doublereal *a, integer *lda, doublereal *work);
#define DIM 2
int main()
{
char norm = '1';
integer m = DIM, n = DIM, lda = DIM;
doublereal a[4] = {1, 8, 3, 4};
doublereal work[8] = {0};
doublereal ret = dlange_(&norm, &m, &n, a, &lda, work);
printf("ret = %lf\n", ret);
return 0;
}