当前位置: 代码迷 >> C语言 >> short类型的位数
  详细解决方案

short类型的位数

热度:620   发布时间:2007-11-25 02:31:44.0
short类型的位数
#include<stdio.h>
#include<conio.h>
using namespace std;

// 实现了一个复数和旋转因子的相乘操作 yi+yq*j=(xi+xq*j)*(cos-sin*j)

typedef signed short    INT16;    /* 16 bit  signed integer */

typedef struct complex {
    INT16 real,imag ;
} complex;


complex ccmul(complex source,complex factor)
{
   complex result;
   result.real = (source.real)*(factor.real) + (source.imag)*(factor.imag);
   result.imag = (source.imag)*(factor.real) - (source.real)*(factor.imag);
   return result;
}

void print(complex source)
{
    printf("data.real=%x\tdata.imag=%x\n",source.real,source.imag);
}

int main()
{
    complex data={0x7233,0xf233};
    complex wnp={0x0165,0xeac8};
    complex data1={0x7345,0x6332};
    complex wnp1={0x2355,0x3244};
    complex data2={0x7345,0x6332};
    complex wnp2={0x0,0x1};
    complex result;
   
    result=ccmul(data2,wnp2);
   
    print(result);
   
    return 0;
}
上面代码运行结果见附件,怎么short也是32位长度的?

[ 本帖最后由 vfdff 于 2007-11-25 10:56 编辑 ]
搜索更多相关的解决方案: 复乘  

----------------解决方案--------------------------------------------------------


代码怎么这样
----------------解决方案--------------------------------------------------------
哇,,厉害,,学C 学到代码一堆了,,厉害,,lz你还是把代码整理下再发上来吧
----------------解决方案--------------------------------------------------------
  这是C吗?
----------------解决方案--------------------------------------------------------
你用了stdio.h就没必要用命名空间了吧。。。。。。好象<cstdio>才要命名空间
----------------解决方案--------------------------------------------------------
但这个不是根本原因,这个命名空间是为了不是变量混淆,有自己的独立空间
所以我当然也可以用了
----------------解决方案--------------------------------------------------------
  相关解决方案