Kolibri Foundation Classes (KFC)

Discussing libraries simplifying applications development
  • Извините за глупый вопрос, но как этим пользоваться? MinGW создаёт только exe... может кто-нибудь скинет пример использования?
  • Melian wrote:

    Code: Select all

    int bcmp (const void *s1, const void *s2, int len)
    {
      for (int i = 0; i<len; i++)
      {
        if ((const char*) (*s1)!=(const char*) (*s2)) return 1;
        s1++;
        s2++;
      }
      return 0;
    }
    Всё!
    Твой код вообще не компилируется ( (const char*) (*s1) вместо *((const char*)s1) приводиш значение ячейки памяти к указателю :) ), к тому-же ты используеш долгую операцию приведения типа в цикле и в целом не эффективно выходит.
    Я б сделал так:

    Code: Select all

    int bcmp(const void *s1,const void *s2,int len)
    {
        unsigned char *m1 = (unsigned char*)s1;
        unsigned char *m2 = (unsigned char*)s2;
        if (s1 != s2)
            for(int i=0;i < len; i++)
            {
                if (m1[i] != m2[i])
                    return 1;
            }
        return 0;
    }
    
    
    int main()
    {
    	std::cout << bcmp("Hello world!", "Hello world!",12) << std::endl;
    	std::cout << bcmp("Hello world!", "Not hello world!",12) << std::endl;
    	int a=1;
    	int b=2;
    	std::cout << bcmp(&a,&b,4) << std::endl;
    	struct s {
    	    int _x,_y;
    	    s(int x, int y)
    	    {
    	      _x = x, _y = y;
    	    }
    	} s1(1,1),s2(2,2);
    	std::cout << bcmp(&s1,&s2,sizeof(s)) << std::endl;
    	return 0;
    }
    
    Если бы строители строили здания, так же как программисты пишут программы первый же залетевший дятел разрушил бы цивилизацию.
  • Albom wrote:Извините за глупый вопрос, но как этим пользоваться? MinGW создаёт только exe... может кто-нибудь скинет пример использования?
    Надо пропустить екзе через программу pk2kos. Что то вроде pk2kos my.exe my.kex (это пока лучше работает) или линковать с ld или джи++ с опцией -T после которой идет файл скрипта указывающий линкеру в каком формате собирать выходной файл. Вообще говоря этот скрипт надо брать из в minuetlibc library include/script/ и там разные скрипты для библиотек и приложений.

    Да совсем забыл, раз уж на то пошло компилировать нужно с целым рядом опций и линковать тоже. Но главные из них -nostdinc for gcc(g++) & -nostdlib после котрых -I и -L которые указывают компилятору и линкеру пути к библиотекам.

    Andrew Programer ты не мог бы слить скрипты для линкера в SVN? Потому как доверия к скриптам минуэт либс нету никакого, программы слинкованные с ними у меня лично вешают систему (причем система запущенна в нативе с дискеты). Т.е. висит задосеная даже драйвер мыши не работает.
    Если бы строители строили здания, так же как программисты пишут программы первый же залетевший дятел разрушил бы цивилизацию.
  • http://alibc.sourceforge.net/
    Сырцов нету. Но есть е-мэйл
  • Yaskhan wrote:http://alibc.sourceforge.net/Сырцов нету. Но есть е-мэйл
    сайт уже 6 лет не обновлялся...
  • http://asm.sourceforge.net/asmutils.html
    http://asm.sourceforge.net/asmutils/asm ... .18.tar.gz

    Там немного функции из ЛибС на асме

    И еще ASSEMBLY PROGRAMMING JOURNAL
    http://mattst88.com/programming/?page=APJ&number=1
    Во всех восми
    Автор Xbios2
  • http://www.freewebs.com/ancientritual/files/glib.zip

    http://fasmlib.x86asm.net/fasmlib-0.8.0.zip

    Кто нибудь, добавьте сюда: http://www.masm32.com/board/index.php? на группу "Project Support Forums" добавить топик Колибри. А то я по англ. плоховат.
  • Who is online

    Users browsing this forum: No registered users and 5 guests