Beispiel #1
0
int main(int argc, const char *argv[])
{
    int a,b,ad,su,mu,de,mo;
    char i;
    fun add1;//申请一个地址空间
    add1=add;//把函数add的入口地址赋给add1 

    fun subtract1;
    subtract1=subtract;
    
    fun multiply1;
    multiply1=multiply;

    fun dev1;
    dev1=dev;

    fun mod1;
    mod1=mod;
    while(1)
    {
    printf("Input a symbol:\n");
    scanf("%c",&i);
    if(i=='#') break;
        printf("Input num1:\n");
         scanf("%d",&a);
          printf("Input num2:\n");
          scanf("%d",&b);
          ad=add1(a,b);
          getchar();//因为输入完成之后要回车才能输入字符,程序会把回车当字符读入造成程序出乱,所以加上getchar()
    switch(i)
    {
        case '+':
          ad=add1(a,b);
          printf("%d + %d= %d\n",a,b,ad);
          break;
         
        case '-':
         su=subtract1(a,b);
          printf("%d - %d= %d\n",a,b,su);
          break;
        case '*':
          mu=multiply1(a,b);
          printf("%d * %d= %d\n",a,b,mu);
          break;
        case '/':
          de=dev1(a,b);
          printf("%d / %d= %d\n",a,b,de);
          break;
        case '%':
          mo=mod1(a,b);
          printf("%d %% %d= %d\n",a,b,mo);
          //打印%的时候 中间要加一个%分开 否则会出错误
          break;
    }

    }
    return 0;
}
Beispiel #2
0
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    DeviceViewer w;

    QTextCodec *codec = QTextCodec::codecForName("CP1251");
    QTextCodec::setCodecForLocale(codec);

    /****Add Test Devices ****/
    QList<MemRegion> memList;


    MemRegion r1("Region1", rand(),"EEPROM1",0,     256*256*14);
    MemRegion r2("Region2", rand(),"EEPROM2",256*256*14, 256*256*25);
    MemRegion r3("Region3", rand(),"EEPROM3",256*256*25, 256*256*40);
    MemRegion r4("Region4", rand(),"EEPROM1",256*256*40, 256*256*58);
    MemRegion r5("Region5", rand(),"EEPROM2",256*256*58, 256*256*80);
    MemRegion r6("Region6", rand(),"EEPROM3",256*256*80, 256*256*99);
    memList << r1 << r2 << r3 << r4 << r5 << r6;

    QList<Node> nodeList;
    for(int i = 0; i < 9; i++){
        Node n;
        n.serialNum = rand();
        n.info = QString("Something about node %1 of Device1").arg(i);
        nodeList << n;
    }
    Device dev1("Device1", "Т0000255", nodeList, memList);

    nodeList.clear();
    for(int i = 0; i < 6; i++){
        Node n;
        n.serialNum = rand();
        n.info = QString("Something about node %1 of Device2").arg(i);
        nodeList << n;
    }
    Device dev2("Device2", "И0000364", nodeList, memList);

    nodeList.clear();
    for(int i = 0; i < 3; i++){
        Node n;
        n.serialNum = rand();
        n.info = QString("Something about node %1 of Device3").arg(i);
        nodeList << n;
    }
    Device dev3("Device3", "Я0000982", nodeList, memList);

    w.addDevice(&dev1);
    w.addDevice(&dev2);
    w.addDevice(&dev3);

    /*************************/

    w.show();

    return a.exec();
}
Beispiel #3
0
void test_binary_ostream ()
{
    byte_string buffer1;
    byte_string buffer2;

    byte_string_odevice dev1(buffer1);
    pfs::io::device_ptr dev2 = pfs::io::open_device(pfs::io::open_params<pfs::io::buffer>(buffer2));

    //test_binary_ostream<byte_string_odevice>(dev1, buffer1);
    test_binary_ostream<pfs::io::device_ptr>(dev2, buffer2);
}