看板 C_and_CPP 關於我們 聯絡資訊
#ifndef RR_H #define RR_H #include<stdio.h> #define move(c) #define SQRT(c)# define TRANS(c)# define FUNC(c)# #endif 怎麼 #define func(x)___________ ↑ 後面都沒有接條件式 然後在它諸多的.cpp中都直接以 " MOVE(1) " MOVE(3) 之類的方式在使用? 指針? 會指到哪裡? 有好幾同一個CPP檔案下的MOVE(1) 後面所描述/*point to________ */ 都不一樣 這是@@? 有請高手指點 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.37.17.164
LPH66:用置底空間貼整段上來看看... 03/30 05:32
#include <math.h> #include <string.h> #include "cfftn.h"# include "rr.h" /* the 3GPP instrumenting tool */ #define MAX_FACTORS 23 #define MAX_PERM 209 #define NFACTOR 11 #ifndef M_PI#define M_PI 3.14159265358979323846264338327950288 #endif #define SIN60 0.86602540378443865 #define COS72 0.30901699437494742 #define SIN72 0.95105651629515357 int cfftn(float Re[],loat Im[], int nTotal,int nPass,int nSpan, int iSign){ int ii,mfactor, kspan, ispan, inc; int j, jc, jf, jj, k, k1, k2, k3=0, k4, kk, kt, nn, ns, nt; double radf; double c1, c2=0.0, c3=0.0, cd; double s1, s2=0.0, s3=0.0, sd; float ak,bk,akp,bkp,ajp,bjp,ajm, bjm,akm,bkm,aj,bj,aa,bb; float Rtmp[MAX_FACTORS]; float Itmp[MAX_FACTORS]; double Cos[MAX_FACTORS]; double Sin[MAX_FACTORS]; int Perm[MAX_PERM]; int factor [NFACTOR]; double s60 = SIN60; double c72 = COS72; double s72 = SIN72; double pi2 = M_PI; COUNT_sub_start("cfftn"); PTR_INIT(6); /* pointer for Rtmp[], Itmp[], Cos[], Sin[], Perm[],factor[] */ ADD(2); Re--; Im--; ADD(1); BRANCH(1); if (nPass < 2) { COUNT_sub_end(); return 0; } MOVE(1); inc = iSign; BRANCH(1); if( iSign < 0 ) { MULT(4); s72 = -s72; s60 = -s60; pi2 = -pi2; inc = -inc; } ....................... .......................... ............................... 類似像這樣的後面還有很多....不太懂他的意涵 ※ 編輯: wowrz 來自: 114.37.17.164 (03/30 06:16)
alongalone:你可能誤會"置底空間"了 03/30 09:32
johnlinvc: 你可能誤會"置底空間"了XDDD 03/30 09:48
godman362:用cpp展開或許就知道他在做什麼了 03/30 12:35
godman362:這邊的cpp指的是gcc的preprocessor 03/30 12:35
tropical72:直接放來源不是很好嗎? http://ppt.cc/Mrpv 03/30 13:09
tropical72:算 Complex FFT core for transforms 的,macro要再查。 03/30 13:10
ppc:沒接條件是就是沒作用 應該是以後可以直接放條件式 04/01 01:16
ppc:然後可以做其他用途 就不用還要去補程式碼吧 04/01 01:17
manoeuvre: 你可能誤會"置底空間"了XDDDDD 04/01 13:43