忍者ブログ
日々の研究生活のメモ書きなど
Numerical Recipes in Cというものがある。



C言語を学ぶなら読んどけって一冊らしい・・・

巻末によく使う配列の確保に関するルーチンをまとめたものがある(nrutil.h / nrutil.c)


これの使い方メモ

参考ページ
http://macwiki.sourceforge.jp/wiki/index.php/NumericalRecipes

一次元配列の場合は

double *hoge
hoge = dvector(0, 10);

/* hogeを使った何か */

free_dvector(0, 10);


でおk
他の型なら、適時修正

領域を確保する配列はhoge[0]からhoge[10]の10個 11個
(この本では要素の0個目は紛らわしいからやめとけ、って書いてます)

最後の行は確保した領域を解放する



a[0] = *(a)
a[i] = *(a+i)

であることも覚えておくと便利だろう



二次元配列では


double **a

a = matrix(0,10,0,10);

for(i=0;i<11;i++){
for(j=0;j<11;j++){
a[i][j] = i*10+j;
printf("%lf ", a[i][j]);
}
printf("\n");
}

free_matrix(a, 0, 10, 0, 10);



たぶんこんな感じでおk


a[0][0] = **(a)
a[i][j] = *(a[i]) = *(*(a+i)+j)

であることも覚えておくと便利だろう
PR
プロフィール
HN:coffee
職業:物理屋(自称)
趣味:映画鑑賞、登山
出身:大阪府の南の田舎
自己紹介:
#include <stdio.h>
#include "MyProfile.h"

#define TWITTER coffee_pote

#ifdef RICH_FLAG
// ↑いつも支援いただきありがとうございます m(_ _)m
#define WISH_LIST
amazonのほしい物リスト
#endif


int main(void){

printf("\n");
printf("あけましておめでとうございます\n");
printf("今年もどうぞよろしくお願いします\n");
printf("\n");
printf("猿でもわかるgnuplot を執筆中\\
少し追記しました\n");
/* 最終更新 2018/01/01 */
return 0;

}
カウンター
ブログ内検索
ツイートするボタン
リンク
相互リンク募集中です (Twitterにてお知らせください)

Demo scripts for gnuplot version 5
(gnuplotのさまざまなデモ画像と作り方がまとめられている、眺めているだけでできるようになった気分になれる)

gnuplotスクリプトの解説
(米澤進吾さんの個人ページ、gnuplotと言えばこのかた)

gnuplot のページ
(Takeno Lab、うちのブログがリンクされていたのでリンク返し)

とある物理の院生日誌~院生は社会へ旅立った~
(研究室の先輩の個人ブログ)

英語例文を見て自然に英語・英会話を学ぶ
(楠本慶ニさんの個人ページ、様々な情報の密度の高さに感動)

Twitterから映画の評価が分かる & 映画の鑑賞記録が残せる coco
(映画の感想をまとめられるサイト、いつもお世話になっています)

Astronomy Picture of the Day Archive
(天文や宇宙関連の最新の話題について画像とともにNASAが説明しているページ)

今日のほしぞら
(任意の時刻の空で見える星を表示してくれる、国立天文台が管理している)

GNUPLOTとアニメーション
(応用の項目の「見せてあげよう!ラピュタの雷を!!」あたりからすごすぎる)

読書メーター
(読んだ本をリストできる便利なサイト)

Flickr

Template "simple02" by Emile*Emilie
忍者ブログ [PR]