Bu c++ veya c kodunu delphi gore nasıl ceviricez

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
seci20

Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen seci20 »

Ustalarım merhaba kusura bakmayın buraya actım bırazda sacma olucak ama elımde bir c++ ıle yazılmıs kod var bunu nasıl delphiye cevirebilirim biraz ugrastım ama pek ılerı olmadıgım için cozemedım daha

Kod şu

Kod: Tümünü seç

#include <string.h>
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>

//#include "calcimei.h"

#define OUT_FILE "MP0B_001_NEW"

int main(int argc, char *argv[])
{
    char *str = "357369035621901";


    FILE* output;
    char inp_imei[15];
    char out_imei[12] = {0};
    int i, ret;
    char *mode;

    if (argc < 2 || strlen(argv[1])!=15 || (argc==3 && strlen(argv[2])!=15))
    {
        fprintf(stdout, "Use: %s <IMEI_1 15 digits> [IMEI_2 15 digits]\n", argv[0]);
        return 1;
    }
    for (i=1; i < argc; i++)
    {
        memset(inp_imei, 0, sizeof(inp_imei));
        memset(out_imei, 0, sizeof(out_imei));

        strncpy(inp_imei, argv[i], sizeof(inp_imei));

        fprintf(stdout, "New IMEI %d (15 digits):%s\n", i, inp_imei);

        ret = calc_imei(&inp_imei, &out_imei);
        if ( ret )
        {
            fprintf(stderr, "Invalid IMEI %d format!\n", i);
            return 1;
        }

        mode="w";
        if (i==2)
        {
            mode="a";
        }
        output = fopen(OUT_FILE, mode);
        fwrite(out_imei, 1, sizeof(out_imei), output);
        fclose(output);

    }


    fprintf(stdout, "New IMEI in file = %s\n", OUT_FILE);

    return 0;
}
int calc_imei(char inp_imei[15], char out_imei[12])
{
    char out_mask[12] = {0xAB, 0xA0, 0x6F, 0x2F, 0x1F, 0x1E, 0x9A, 0x45, 0x0, 0x0, 0x0, 0x0};
    int i=0, j=0;

    for (i=0, j=0; i < 15; i++, j++)
    {

        if (inp_imei[i] < '0' || inp_imei[i] > '9')
        {
            return 1;
        }
        out_imei[j] = (inp_imei[i] - '0');

        if (i >= 14)
            break;

        if (inp_imei[i+1] < '0' || inp_imei[i+1] > '9')
        {
             return 1;
        }
        out_imei[j] += ((inp_imei[i+1] - '0') << 4);

        out_imei[j] = out_imei[j] ^ out_mask[j];
        i++;
    }

    out_imei[j] = out_imei[j] ^ out_mask[j];

    out_imei[8] = 0x57; //Может быть и 0x0, ни на что не влияет
    out_imei[9] = 0xDB; //Может быть и 0x0, ни на что не влияет

    out_imei[10] = out_imei[11] = 0;

    for (i = 0; i < 10; i++)
    {
        if (i & 0x1)
        {
            out_imei[11] += out_imei[i];
        }
        else
        {
            out_imei[10] += out_imei[i];
        }
    }

    return 0;
}
Aslında yardımcı olan ustamda olursa cok ıyı olur cunku ben c++ mantıgını tam kavrıyamadım dıger arkadaslardada cok goruyorum tam aklımıza oturmus olur sımdıden cok tesekkur ederım...
anonymousdelphicoder
Üye
Mesajlar: 152
Kayıt: 16 May 2014 11:23

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen anonymousdelphicoder »

Burdaki insanlar senin verdigin satirlarca kodu cevirmek icin bu forumda yer almiyorlar, verdigin kod konsol uygulamasi disk islemleri, hex kullanimi, array kullanimi, birkac da bellek apisi yer aliyor(sizeof delphide zaten kullaniliyor) bunlarla birlikte dongu kullanmis. Kisacasi bunlar en temel konular kavrayamadim gibi bahanelerle ne kendinizi kandirin nede bizleri.

Ayrıca Onemli Not: bu kod delphiye cevrilse bile calismasi imkansiz, cunku "calcimei.h" include ediyor ve bu basliktan calc_imei fonksiyonunu cagiriyor bu basligi ve kodlarida mi Delphi ye cevirmemizi isteyeceksin? Arastira arastira syntax kullanimlarini ogrenip cozebilirsin ama bu sekilde yapman hic dogru degil.
Kullanıcı avatarı
kimimben
Üye
Mesajlar: 129
Kayıt: 28 Oca 2016 04:41
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen kimimben »

@anonymousdelphicoder +1
seci20

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen seci20 »

anonymousdelphicoder yazdı:Burdaki insanlar senin verdigin satirlarca kodu cevirmek icin bu forumda yer almiyorlar, verdigin kod konsol uygulamasi disk islemleri, hex kullanimi, array kullanimi, birkac da bellek apisi yer aliyor(sizeof delphide zaten kullaniliyor) bunlarla birlikte dongu kullanmis. Kisacasi bunlar en temel konular kavrayamadim gibi bahanelerle ne kendinizi kandirin nede bizleri.

Ayrıca Onemli Not: bu kod delphiye cevrilse bile calismasi imkansiz, cunku "calcimei.h" include ediyor ve bu basliktan calc_imei fonksiyonunu cagiriyor bu basligi ve kodlarida mi Delphi ye cevirmemizi isteyeceksin? Arastira arastira syntax kullanimlarini ogrenip cozebilirsin ama bu sekilde yapman hic dogru degil.
gercekten sızı anlamakta harbıden zorlanıyorum oraya ozellıkle pek ileri değilim yazdıgım halde ılla bır laf sokma cabası ıcıne gırmenızı ne ustalık olarak neden programcı olarak sızı ileri duzey gormuyorum.Sizin gozunuzde hiç araştırılmamıs bırısı gelmıs buraya hazır kodu yazmıs sonrada cevır dıye yalvarıyor gıbı gorunuyoruz sanırsam ? Bu konu uzerınden 1 yıldır calısıyorum.Ve takıldıgım yerlerı soruyorum zaten sabıt kodları sormuyorum sıze ozel olan kodları soruyorum farkındaysanız.Ama ınatla bır laf sokup orseleyelım aptal yerıne koyalımkı kendısı alcalsın cabasına gırmenızı cozemedım.Yanı bu bır ego tatmın etmekmı yoksa farklı bır durummu anlamıyorum.Şunu belırtmek ısterım kendım bır teknık servıs elemanıydım bundan once ve emın ol teknık srvıs elemanları kadar arastıran bır iş kolu daha yoktur cunku ısımız tamamen arastırmaya gırıyor.Ama sızdekı bu orseleyıp ezmeyı cozmus degılım hala...
anonymousdelphicoder
Üye
Mesajlar: 152
Kayıt: 16 May 2014 11:23

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen anonymousdelphicoder »

Abartili cumleleriniz bence oldukca yersiz, kimsenin kimseyi ezmeye calistigi yok, evet yaptiginiz hazircilikdan baska sey degil gidiceksin arastiracaksin kardesim baska yolu yok burdaki kimse ustadlarim baskalarindan hazir kod istemediler yoksa bu konumda olamazlardi. 2.si ise teknik servis kolu kadar arastiran is kolu yok diyerek zaten yazilimda ne kadar asagi seviyede oldugunuzu ve asil sizin uste cikma cabasi icerisinde oldugunuz belli oluyor. Siz yazilimi databaseden ibaret sandiniz heralde! Ayrica siz donanim uretmiyorsunuz siz uretilen donanimdaki hatalari yeni aygit ile degistiriyor yerine yenisini takiyorsunuz binlerce dolarlik test makinalariniz ile bu isi yaparken teknik servisligi yazilim kiyaslayacak kadarda bilgi seviyenizi belli etmis oldunuz. Donanim uretip elektronik modul gelistiriyor olsaydiniz evet haklisiniz diyebilirdim ama inanin ki siz bile bu soyledikleriniz mantik disi oldugunu kabul ediyorsunuz size iyi calismalar
seci20

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen seci20 »

anonymousdelphicoder yazdı:Abartili cumleleriniz bence oldukca yersiz, kimsenin kimseyi ezmeye calistigi yok, evet yaptiginiz hazircilikdan baska sey degil gidiceksin arastiracaksin kardesim baska yolu yok burdaki kimse ustadlarim baskalarindan hazir kod istemediler yoksa bu konumda olamazlardi. 2.si ise teknik servis kolu kadar arastiran is kolu yok diyerek zaten yazilimda ne kadar asagi seviyede oldugunuzu ve asil sizin uste cikma cabasi icerisinde oldugunuz belli oluyor. Siz yazilimi databaseden ibaret sandiniz heralde! Ayrica siz donanim uretmiyorsunuz siz uretilen donanimdaki hatalari yeni aygit ile degistiriyor yerine yenisini takiyorsunuz binlerce dolarlik test makinalariniz ile bu isi yaparken teknik servisligi yazilim kiyaslayacak kadarda bilgi seviyenizi belli etmis oldunuz. Donanim uretip elektronik modul gelistiriyor olsaydiniz evet haklisiniz diyebilirdim ama inanin ki siz bile bu soyledikleriniz mantik disi oldugunu kabul ediyorsunuz size iyi calismalar
bence sizin ciddi sorunlarınız var konu sadece yardımdır kımsenın hazır kod yapmıslıgı yok surda toplasan konularımın hazır kod halıne gelmıs 10 tane kod vardır.Bu ne sacma sapan bır dusunce yontemı hazır kod ılemı program yazıp sundum piyasaya ? Ömrüm boyunca hıc bır ınsanı kendimden küçük görmedim.Bu piyasadakı usta adamlarla oturup kalkıyorsam demekkı teknık serviste al tak seviyesınde bır ınsan degılım bence kımseyı tanımadan sacma sapan cumlelerınızı sarf etmeyın cıdden komık oluyorsunuz.Dediğim gibi ustalık tek bılgı bılmekle olmuyor burda nasıl bır şahıs oldugunuzu kendınız belırledınız zaten iyi gunler....
Kullanıcı avatarı
kimimben
Üye
Mesajlar: 129
Kayıt: 28 Oca 2016 04:41
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen kimimben »

seci20 yazdı: Aslında yardımcı olan ustamda olursa cok ıyı olur cunku ben c++ mantıgını tam kavrıyamadım dıger arkadaslardada cok goruyorum tam aklımıza oturmus olur sımdıden cok tesekkur ederım...
Verdiğiniz kodun ne iş yaptığını biliyor musunuz ?
Verdiğiniz kodu derleyebildiniz mi ?
Test ettiniz mi ? Belki çalışmayan bir C++ kodunu boş yere çevirtmeye uğraşıyorsunuz ?
Verdiğiniz C++ kodunu bir vatandaş,delphiye çevirip verse kavramış olacak mısınız ?
seci20 yazdı: biraz ugrastım ama pek ılerı olmadıgım için cozemedım daha
Böyle müphem bir cümle doğrudan size şu soruyu yöneltir.
Mesela neleri,hangi yöntemleri denediniz?
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen greenegitim »

Bence @seci20 arkadaşımızın tek hatası delphi de yaptığı kadar kısmı paylaşmamış olması teknik servisi küçümsemenize de katılmıyorum aynı şekilde elin amerikalısıda gelip biz programcılara siz ne yapıyorsunuz ki java yıda C yide pascalı da biz yaptık siz kullanıyorsunuz diyebilir.
Mücadele güzelleştirir!
seci20

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen seci20 »

kimimben yazdı:
seci20 yazdı: Aslında yardımcı olan ustamda olursa cok ıyı olur cunku ben c++ mantıgını tam kavrıyamadım dıger arkadaslardada cok goruyorum tam aklımıza oturmus olur sımdıden cok tesekkur ederım...
Verdiğiniz kodun ne iş yaptığını biliyor musunuz ?
Verdiğiniz kodu derleyebildiniz mi ?
Test ettiniz mi ? Belki çalışmayan bir C++ kodunu boş yere çevirtmeye uğraşıyorsunuz ?
Verdiğiniz C++ kodunu bir vatandaş,delphiye çevirip verse kavramış olacak mısınız ?
seci20 yazdı: biraz ugrastım ama pek ılerı olmadıgım için cozemedım daha
Böyle müphem bir cümle doğrudan size şu soruyu yöneltir.
Mesela neleri,hangi yöntemleri denediniz?
verdiğim kod çalışıyor...
çalışmasa neden buraya eklıyeyım ?
verdiğim kodu sorunsuz derledım...
test ettim çalışıyor aslında ufak bir hesaplama sıstemı var orda o olsa gerısını zaten delphide basarabılıcem ama orayı cevıremedım.hesaplamada yukarda bellı zaten.
son soruda evet kavrıcam sizin mantıgınıza gore ogretmene gıdıp ben bunu ogrenıcem sız bana ogretmeyın demenızden farksızdır böyle öğrenılmez en azından ben oyle ogrenmedım.Belki delphide acemı olabılırım ama kesınlıkle teknıkte degılım al takcı olmadım olmam adım Mesut KaanYÖRÜK googleye yazıp yaptıgım ıslemlerı rahat sekılde gorebılırsınız.Tanımadıgız bırı hakkında bu kadar basıt konusmanız gercekten garıbıme gıttı.Yaptıgınız konusmalara dayanarak soyluyorum profesyonellık bu degıldır.Benım actıgım konulara bakın kesınlıkle saygısızlık yapmadım emege saygısızlıkta dahıl bunun ıcınde ve bana cevap veren gercek usta olan kısılere bır bakmanızı onerırım.SimaWB hocamın bir oncekı konuda verdıgı kodu nasıl kullanıcagımı ufak bır dalgınlıkla bıle unutup sordugumda ki bayadır uykusuzdum en az 3-4 defa ozur dıledım.Oda bir profesyonel gibi bu ısın hakkını veren gercek bır hoca gıbı bana yardımcı oldu ALLAH razı olsun.Ama sizin verdıgınız tepkıyı gercekten anlamadım bıraz uzun yazdım kusura bakmayın.Hayırlı gunler.
seci20

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen seci20 »

greenegitim yazdı:Bence @seci20 arkadaşımızın tek hatası delphi de yaptığı kadar kısmı paylaşmamış olması teknik servisi küçümsemenize de katılmıyorum aynı şekilde elin amerikalısıda gelip biz programcılara siz ne yapıyorsunuz ki java yıda C yide pascalı da biz yaptık siz kullanıyorsunuz diyebilir.
belkıde hocam ama verdıgı tepkıde problem var boyle dese ben hem ozurumu dıler hemen yazardım ama malasef ki usta adamlardan ozur dılenır bir bildigi vardır denır en azından ben boyle gordum ustamdan saygı cercevesını...
Kullanıcı avatarı
kimimben
Üye
Mesajlar: 129
Kayıt: 28 Oca 2016 04:41
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen kimimben »

greenegitim yazdı:Bence @seci20 arkadaşımızın tek hatası delphi de yaptığı kadar kısmı paylaşmamış olması
nerden biliyorsunuz delphi yaptığı kadarı olduğunu ?
Delphi de yaptığı kadar olsaydı,şu kadarını yaptım,ama burayı anlamadım,yapamadım demek gerekmez miydi ?
greenegitim yazdı:aynı şekilde elin amerikalısıda gelip biz programcılara siz ne yapıyorsunuz ki java yıda C yide pascalı da biz yaptık siz kullanıyorsunuz diyebilir.
Bu cümlenizi, hangi cümleye karşılık olarak yazdığınızı henüz anlayabilmiş değilim.

seci20 yazdı:test ettim çalışıyor aslında ufak bir hesaplama sıstemı var orda o olsa gerısını zaten delphide basarabılıcem ama orayı cevıremedım
Bahsettiğinize göre o ufak hesaplama sistemini kavramışsanız,yani kodun ne iş yaptığını biliyorsanız C/C++ öğrenmenize ve uğraşmanıza gerek yok.
Doğrudan delphi de kodlayabilirsiniz.
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen greenegitim »

kimimben yazdı:
greenegitim yazdı:Bence @seci20 arkadaşımızın tek hatası delphi de yaptığı kadar kısmı paylaşmamış olması
nerden biliyorsunuz delphi yaptığı kadarı olduğunu ?
Delphi de yaptığı kadar olsaydı,şu kadarını yaptım,ama burayı anlamadım,yapamadım demek gerekmez miydi ?
Bunu biraz uğraştım demesinden çıkardım
kimimben yazdı:
greenegitim yazdı:aynı şekilde elin amerikalısıda gelip biz programcılara siz ne yapıyorsunuz ki java yıda C yide pascalı da biz yaptık siz kullanıyorsunuz diyebilir.
Bu cümlenizi, hangi cümleye karşılık olarak yazdığınızı henüz anlayabilmiş değilim.
Şu cümleye
anonymousdelphicoder yazdı: Ayrica siz donanim uretmiyorsunuz siz uretilen donanimdaki hatalari yeni aygit ile degistiriyor yerine yenisini takiyorsunuz
genelde ne yazıki bizde yazılım alanında teknolojiyi üretmeyen onu kullanan tarafız. kullandığınız işletim sisteminden ide ye tarayıcıya mail programınıza, antivirüsünüze bakın.

Lafım size değil genele; genel olarak bu forumda gördüğüm hazır kod isteyen birşeylere hiç başlamadan öğrenmeden ilerlemeye çalışan kişilerin forumda oluşturduğu kirlilikten gına gelmiş olacaki soruyu biraz eksik veya tam uslubuna uygun sormayanlarda aynı muameliyi göstermek refleks olmuş anlayabiliyorum. database nedir koşul nedir procedure nedir tam bilmeden derme çatma kopyala yapıştırla buralardan kod kopyalayıp örnek projelerden yola çıkarak program yazıp satmış uses a kullandığı kodun unitini eklemediği için 2-3 gün cebeleşmiş adamlarda gördüm. vel hasıl kelam burada soruyu soran arkadaş öyle dahi olsa daha önce buradaki üstadların verdiği gibi cevaplar daha uygun olacaktır örnek "Bir delphi kitabı edin tavsiyem xxx" marco cantunun şu makalesi linki burada burayı oku, youtubedan şu videoyu izle demek daha yapıcı bir yorum olacaktır.
Saygılar..
Mücadele güzelleştirir!
dicle_gsm
Üye
Mesajlar: 19
Kayıt: 26 Oca 2016 06:52
Konum: Mardin
İletişim:

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen dicle_gsm »

++
En son dicle_gsm tarafından 12 Tem 2016 11:41 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
kimimben
Üye
Mesajlar: 129
Kayıt: 28 Oca 2016 04:41
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen kimimben »

seci20 yazdı: verdiğim kod çalışıyor...
çalışmasa neden buraya eklıyeyım ?
verdiğim kodu sorunsuz derledım...
Nasıl derlediniz hangi derleyici,ide ile test ettiniz ?
Kullanıcı avatarı
kimimben
Üye
Mesajlar: 129
Kayıt: 28 Oca 2016 04:41
Konum: İstanbul

Re: Bu c++ veya c kodunu delphi gore nasıl ceviricez

Mesaj gönderen kimimben »

greenegitim yazdı:aynı şekilde elin amerikalısıda gelip biz programcılara siz ne yapıyorsunuz ki java yıda C yide pascalı da biz yaptık siz kullanıyorsunuz diyebilir.
Konuyu değişik bir açıdan değerlendirmişsiniz.Doğru.

Okumayı,araştırmayı,düzgün soru sormayı,daha iyisini nasıl yaparımı,
hepsinden önemlisi öğrenmeyi sevmediğimiz için teknolojiyi üreten değil,tüketen konumunda olmamız normal.
Cevapla