Перевести код из C++ в C

Тема в разделе "Общие вопросы по С и С++", создана пользователем Future Lover, 8 янв 2008.

  1. Future Lover

    Future Lover Гость

    Привет. Надо перевести код на С из С++. Может кто-нибудь подсказать что тут поменять?
    Код (Text):
    // temp.cpp : Defines the entry point for the console application.
    //

    #include "stdafx.h"
    #include <iostream>

    using namespace std;

    int my_strlen( const char *sz ) {
    const char *szEnd = sz;
    while( *szEnd++ ) {; }
    return int( szEnd - sz - 1 );
    }


    size_t getPtrSize( char *ptr )
    {
    return sizeof( ptr );
    }


    char* compress( char str[] )
    {
    int str_size = my_strlen( str );

    char *res;
    res = new char[ int ( str_size*3/2 ) ];

    int i;
    int j = 0;
    int count = 0;

    for ( i = 0; i < str_size; i++ )
    {
    if ( str[ i ] != str[ i + 1 ] )
    {
    if ( count > 0 )
    {
    res[ j ] = '#';
    res[ j + 1 ] = str[ i ];
    res[ j + 2 ] = count + 49;
    j += 3;
    count = 0;
    }
    else
    {
    res[ j ] = str[ i ];
    j += 1;
    }          
    }
    else
    count++;
    }
    res[ j ] = '\0';
    return res;
    }

    int _tmain(int argc, _TCHAR* argv[])
    {
    char *str;
    str = new char[100];
    cout << "Enter string: ";
    cin >> str;
    cout << "Compressed string: " << compress( str ) << "\n";

    int i, j;

    int *array_a;
    int size_a;
    cout << "Enter array A dimension: ";
    cin >> size_a;
    array_a = new int[ size_a ];
    cout << "Enter " << size_a << " elements: ";
    for ( i = 0; i < size_a; i ++ )
    cin >> array_a[ i ];


    int *array_b;
    int size_b;
    cout << "Enter array B dimension: ";
    cin >> size_b;
    array_b = new int[ size_b ];
    cout << "Enter " << size_b << " elements: ";
    for ( i = 0; i < size_b; i ++ )
    cin >> array_b[ i ];

    int count = 0;
    for ( i = 0; i < size_a; i ++ )
    {
    if ( array_a[ i ] == array_a[ i + 1 ] )
    continue;  
    for ( j = 0; j < size_b; j++ )
    if ( array_a[ i ] == array_b[ j ] )
    {
    count++;
    break;
    }
    }
    cout << "Result: " << count << "\n";
    cin >> count;
    return 0;
    }
     
  2. vadim55

    vadim55 Гость

    Вам нужно сделать немного
    1.вместо new использовать malloc
    2.вместо cin scanf
    3.вместо cout printf
     
Загрузка...
Похожие Темы - Перевести код из
  1. Dimkawshm
    Ответов:
    3
    Просмотров:
    1.244
  2. marik22222
    Ответов:
    1
    Просмотров:
    1.207
  3. ClockRu
    Ответов:
    0
    Просмотров:
    1.255
  4. GoldenYear
    Ответов:
    0
    Просмотров:
    1.171
  5. Ластик
    Ответов:
    3
    Просмотров:
    1.484

Поделиться этой страницей