24小时热门版块排行榜    

查看: 1095  |  回复: 3

zihai123

铁虫 (小有名气)

[求助] stdafx.h是MFC中处理矩阵的函数,能不能在DSP中调用。

stdafx.h是MFC中处理矩阵的函数,能不能在DSP中调用。如:
#include "stdafx.h"
#include "math.h"
......
void CMatrixOper::fftshift(COMPLEX*Matr,int row,int colum)
{
        COMPLEX temp;
        temp.im = 0;
        temp.re = 0;
        int i,j;
        for (i = 0;i < row;i++)
        {
                if (fmod(colum,2))
                {
                        for (j = 0;j < (colum-1)/2;j++)
                        {                       
                                temp.re = (*(Matr + colum*i + (colum+1)/2+j)).re;
                                temp.im = (*(Matr + colum*i + (colum+1)/2+j)).im;
                                (*(Matr + colum*i + (colum+1)/2+j)).re = (*(Matr + colum*i + j)).re;
                                (*(Matr + colum*i + (colum+1)/2+j)).im = (*(Matr + colum*i + j)).im;
                                (*(Matr + colum*i + j)).re = temp.re;
                                (*(Matr + colum*i + j)).im = temp.im;
                        }
                        for (j = (colum-1)/2;j                         {
                                temp.re = (*(Matr + colum*i + j)).re;
                                temp.im = (*(Matr + colum*i + j)).im;
                                (*(Matr + colum*i + j)).re = (*(Matr + colum*i + j + 1)).re;
                                (*(Matr + colum*i + j)).im = (*(Matr + colum*i + j + 1)).im;
                                (*(Matr + colum*i + j + 1)).re = temp.re;
                                (*(Matr + colum*i + j + 1)).im = temp.im;
                        }
                }
                else
                {
                        for (j = 0;j < colum/2;j++)
                        {
                                temp.re = (*(Matr + colum*i + colum/2+j)).re;
                                temp.im = (*(Matr + colum*i + colum/2+j)).im;
                                (*(Matr + colum*i + colum/2+j)).re = (*(Matr + colum*i + j)).re;
                                (*(Matr + colum*i + colum/2+j)).im = (*(Matr + colum*i + j)).im;
                                (*(Matr + colum*i + j)).re = temp.re;
                                (*(Matr + colum*i + j)).im = temp.im;
                        }
                }
        }
        for (j = 0;j < colum;j++)
        {
                if (fmod(row,2))
                {
                        for (i = 0;i < (row-1)/2;i++)
                        {
                                temp.re = (*(Matr + colum*i + (row+1)*colum/2+j)).re;
                                temp.im = (*(Matr + colum*i + (row+1)*colum/2+j)).im;
                                (*(Matr + colum*i + (row+1)*colum/2+j)).re = (*(Matr + colum*i + j)).re;
                                (*(Matr + colum*i + (row+1)*colum/2+j)).im = (*(Matr + colum*i + j)).im;
                                (*(Matr + colum*i + j)).re = temp.re;
                                (*(Matr + colum*i + j)).im = temp.im;
                        }
                                for (i = (row-1)/2;i                         {
                                temp.re = (*(Matr + colum*i + j)).re;
                                temp.im = (*(Matr + colum*i + j)).im;
                                (*(Matr + colum*i + j)).re = (*(Matr + colum*(i+1) + j)).re;
                                (*(Matr + colum*i + j)).im = (*(Matr + colum*(i+1) + j)).im;
                                (*(Matr + colum*(i+1) + j)).re = temp.re;
                                (*(Matr + colum*(i+1) + j)).im = temp.im;
                        }
                }
                else
                {
                        for (i = 0;i < row/2;i++)
                        {
                                temp.re = (*(Matr + colum*i + row*colum/2+j)).re;
                                temp.im = (*(Matr + colum*i + row*colum/2+j)).im;
                                (*(Matr + colum*i + row*colum/2+j)).re = (*(Matr + colum*i + j)).re;
                                (*(Matr + colum*i + row*colum/2+j)).im = (*(Matr + colum*i + j)).im;
                                (*(Matr + colum*i + j)).re = temp.re;
                                (*(Matr + colum*i + j)).im = temp.im;
                        }
                }
        }
}
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
zihai123: 金币+2, ★★★很有帮助 2012-06-08 19:21:42
(1)stdafx.h是MFC中的头文件
(2)stdafx.h与处理矩阵的函数无关
(3)不是MFC框架的程序,没办法也没必要用stdafx.h
2楼2012-06-07 09:46:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zihai123

铁虫 (小有名气)

引用回帖:
2楼: Originally posted by yalefield at 2012-06-07 09:46:42
(1)stdafx.h是MFC中的头文件
(2)stdafx.h与处理矩阵的函数无关
(3)不是MFC框架的程序,没办法也没必要用stdafx.h

我在DSP中需要用到一个能区分复数的函数,如求复数的角度像matlab中的angle,,其中用到了complex.h这个头文件能不能在DSP中调用啊,谢啦
3楼2012-06-08 19:21:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖

★
zihai123: 金币+1 2012-06-13 21:05:27
当然可以用。

您应该学习一下,那些函数是“纯”函数,也就是与操作系统、开发环境无关的函数。
4楼2012-06-08 21:07:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zihai123 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 极限拉扯,如何抉择 +3 Isak0320 2026-10-12 5/250 2026-10-12 16:42 by Isak0320
[教师之家] 课题组会帮你通过考核么? +3 好运来~9527 2026-10-10 6/300 2026-10-12 14:55 by 简单化xn
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +4 wangyl_123 2026-10-10 7/350 2026-10-12 14:47 by chuans0923
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:15 by XQNyDCa1Tk5n
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 22:11 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
[基金申请] 入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍 +5 13108017953 2026-10-08 5/250 2026-10-10 11:15 by wdwd123
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见