KotZhilkina #1021 15 октября 2013 begin end vs { }ну ты наверное в курсе, что в vb нет скобочек так же как и begin end Публикация отключена Поделиться сообщением Ссылка на сообщение
TheDeadSkin #1022 15 октября 2013 begin нет, а end-ов хватаеттолько они там не просто end, a end if, next, end sub, end function Поделиться сообщением Ссылка на сообщение
KotZhilkina #1023 15 октября 2013 begin нет, а end-ов хватаеттолько они там не просто end, a end if, next, end sub, end functionтак а в чем собственно проблема? скобочек в синтаксисе языка не предусмотрено, так что приходится использовать имеющиеся средства, т.е. sub...end sub`ы и иже с ними Публикация отключена Поделиться сообщением Ссылка на сообщение
TheDeadSkin #1024 15 октября 2013 вопрос исключительно в читаемости Поделиться сообщением Ссылка на сообщение
KotZhilkina #1025 15 октября 2013 вопрос исключительно в читаемостину тогда подтверждаю - sub...end sub читабельны Публикация отключена Поделиться сообщением Ссылка на сообщение
Kant #1027 15 октября 2013 как вариант закрыть\открыть эклипс кстати помогло только теперь на эту строку ругаетсяpublic void openMainPage() {driver.get(TestBase.baseUrl + "/addressbookv4.1.4/");} может там два слеша получается после сложения рядомили в конце слеш не нужен Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью. Поделиться сообщением Ссылка на сообщение
F1sher #1028 15 октября 2013 char *s_source[] = { "01234", "01234", "01234", "" }; int n = sizeof(s_source) / sizeof(char*); char **s=new char*[n]; for(int i=0;i<n;++i){ s[i]=new char[15]; strcpy(s[i],s_source[i]); } если через эти строки проверяю, то везде все правильно, а через мои неправильно. Объясните почему пожалуйста ааа // мои char *s1[] = {"ab","abcd",""," "}; char *s2[] = {"ab","abccd", " ", "asda"}; хз актуаольно ли, но в твоем коде char *s - это указатель на элемент типа char, а char *s1[] = {"ab","abcd",""," "}; - это объявление и инициализация указателя на указатель char *s = "hello"; - вот это указатель, а у тебя несколько строк int strcmp1(char *s1, char *s2){ while( *s1 && *s1 == *s2){ s1++; s2++; } if(*s1 == *s2) return 0; return *s1>*s2 ? 1 : -1; } В общем, в чем ошибка? при s1 = ab и s2 = ab всеравно -1, почему 1) неплохо было бы еще в условие while добавить && *s2и 2) 1ая строка должна выглядеть как int strcmp1(const char **s1, const char **s2) Вообще эта функция реализована вроде как так int strcmp(const char *s1, const char *s2) { int ret = 0; while (!(ret = *(unsigned char *) s1 - *(unsigned char *) s2) && *s2) ++s1, ++s2; if (ret < 0) { ret = -1; } else if (ret > 0) { ret = 1 ; } return ret; } Би май дарлинг http://www.youtube.com/watch?v=LhkUjA3D8ig Поделиться сообщением Ссылка на сообщение
Kant #1029 15 октября 2013 ну вообще-то она реализована так public strcmp strcmp proc \ str1:ptr byte, \ str2:ptr byte OPTION PROLOGUE:NONE, EPILOGUE:NONE ; .FPO (cdwLocals, cdwParams, cbProlog, cbRegs, fUseBP, cbFrame) .FPO ( 0, 2, 0, 0, 0, 0 ) mov edx,[esp + 4] ; edx = src mov ecx,[esp + 8] ; ecx = dst test edx,3 jnz short dopartial align 4 dodwords: mov eax,[edx] cmp al,[ecx] jne short donene test al,al jz short doneeq cmp ah,[ecx + 1] jne short donene test ah,ah jz short doneeq shr eax,16 cmp al,[ecx + 2] jne short donene test al,al jz short doneeq cmp ah,[ecx + 3] jne short donene add ecx,4 add edx,4 test ah,ah jnz short dodwords align 4 doneeq: xor eax,eax ret align 8 donene: ; The instructions below should place -1 in eax if src < dst, ; and 1 in eax if src > dst. sbb eax,eax or eax,1 ret align 16 dopartial: test edx,1 jz short doword mov al,[edx] add edx,1 cmp al,[ecx] jne short donene add ecx,1 test al,al jz short doneeq test edx,2 jz short dodwords align 4 doword: mov ax,[edx] add edx,2 cmp al,[ecx] jne short donene test al,al jz short doneeq cmp ah,[ecx + 1] jne short donene test ah,ah jz short doneeq add ecx,2 jmp short dodwords strcmp endp end но сверху над этим же кодом в комменте написан код на с Base Algorithm: ; int strcmp ( const char *str1, const char *str2 ) ; { ; const unsigned char *src1 = (const unsigned char *)str1; ; const unsigned char *src2 = (const unsigned char *)str2; ; int ret = 0 ; ; ; while( ! (ret = *src1 - *src2) && *src2) ; ++src1, ++src2; ; ; if ( ret < 0 ) ; ret = -1 ; ; else if ( ret > 0 ) ; ret = 1 ; ; ; return( ret ); ; } Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью. Поделиться сообщением Ссылка на сообщение
choojoykin #1030 15 октября 2013 збс класс public abstract class HelperBase { protected ApplicationManager manager; public HelperBase(ApplicationManager manager) { this.manager = manager; } } как вариант закрыть\открыть эклипс кстати помогло только теперь на эту строку ругаетсяpublic void openMainPage() {driver.get(TestBase.baseUrl + "/addressbookv4.1.4/");} может там два слеша получается после сложения рядомили в конце слеш не нужентам косяк с этим testbaseя драйвер давно переопределил, а он тут старый еще валяется ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
Kant #1031 15 октября 2013 если это джава, то тебе срочно надо добавить какую-нибудь фабрику Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью. Поделиться сообщением Ссылка на сообщение
choojoykin #1032 15 октября 2013 Яков Файн - Программирование на Java для детей, родителей, дедушек и бабушекпойду почитаю перед сном если это джава, то тебе срочно надо добавить какую-нибудь фабрикуда я туда потом напихаю методов и все ок будет ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
Tinplz #1033 15 октября 2013 если это джава, то тебе срочно надо добавить какую-нибудь фабрикуда я туда потом напихаю методов и все ок будет Ты же тестер. Поделиться сообщением Ссылка на сообщение
DIMAN123456789 #1034 15 октября 2013 если это джава, то тебе срочно надо добавить какую-нибудь фабрикуда я туда потом напихаю методов и все ок будет Ты же тестер.лол, вот это книженция, думал прикол какой. А там абстрактные фабрики и бины будут рассматривать? Поделиться сообщением Ссылка на сообщение
Pipiska.Drakona #1035 16 октября 2013 обьясните плз что такое булеанучитель говорит чето тру, фолс, ретурн. визуал бесик (•_•) .. ☻ ̿̿ ̿̿ ̿̿ ̿̿'̿'\̵͇̿̿\з=( ͡° ͜ʖ ͡°)=ε/̵͇̿̿/’̿’̿ ̿ ̿̿ ̿̿ ̿̿ (ง ͠° ͟ʖ ͡°)ง ☺ ∫\ \___( •_•) _∫∫ _∫∫ɯ \ \ Поделиться сообщением Ссылка на сообщение
Tinplz #1036 16 октября 2013 обьясните плз что такое булеанучитель говорит чето тру, фолс, ретурн.визуал бесикhttp://ru.wikipedia.org/wiki/%D0%9B%D0%BE%D0%B3%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D1%82%D0%B8%D0%BF Поделиться сообщением Ссылка на сообщение
Pipiska.Drakona #1037 16 октября 2013 обьясните плз что такое булеанучитель говорит чето тру, фолс, ретурн.визуал бесикhttp://ru.wikipedia..../Логический_типну хуй знает (•_•) .. ☻ ̿̿ ̿̿ ̿̿ ̿̿'̿'\̵͇̿̿\з=( ͡° ͜ʖ ͡°)=ε/̵͇̿̿/’̿’̿ ̿ ̿̿ ̿̿ ̿̿ (ง ͠° ͟ʖ ͡°)ง ☺ ∫\ \___( •_•) _∫∫ _∫∫ɯ \ \ Поделиться сообщением Ссылка на сообщение
choojoykin #1038 16 октября 2013 если это джава, то тебе срочно надо добавить какую-нибудь фабрикуда я туда потом напихаю методов и все ок будет Ты же тестер.и? ни мало ни много, а много и мало Поделиться сообщением Ссылка на сообщение
F1sher #1039 16 октября 2013 (изменено) ну вообще-то она реализована так public strcmp strcmp proc \ str1:ptr byte, \ str2:ptr byte OPTION PROLOGUE:NONE, EPILOGUE:NONE ; .FPO (cdwLocals, cdwParams, cbProlog, cbRegs, fUseBP, cbFrame) .FPO ( 0, 2, 0, 0, 0, 0 ) mov edx,[esp + 4] ; edx = src mov ecx,[esp + 8] ; ecx = dst test edx,3 jnz short dopartial align 4 dodwords: mov eax,[edx] cmp al,[ecx] jne short donene test al,al jz short doneeq cmp ah,[ecx + 1] jne short donene test ah,ah jz short doneeq shr eax,16 cmp al,[ecx + 2] jne short donene test al,al jz short doneeq cmp ah,[ecx + 3] jne short donene add ecx,4 add edx,4 test ah,ah jnz short dodwords align 4 doneeq: xor eax,eax ret align 8 donene: ; The instructions below should place -1 in eax if src < dst, ; and 1 in eax if src > dst. sbb eax,eax or eax,1 ret align 16 dopartial: test edx,1 jz short doword mov al,[edx] add edx,1 cmp al,[ecx] jne short donene add ecx,1 test al,al jz short doneeq test edx,2 jz short dodwords align 4 doword: mov ax,[edx] add edx,2 cmp al,[ecx] jne short donene test al,al jz short doneeq cmp ah,[ecx + 1] jne short donene test ah,ah jz short doneeq add ecx,2 jmp short dodwords strcmp endp end но сверху над этим же кодом в комменте написан код на с Base Algorithm: ; int strcmp ( const char *str1, const char *str2 ) ; { ; const unsigned char *src1 = (const unsigned char *)str1; ; const unsigned char *src2 = (const unsigned char *)str2; ; int ret = 0 ; ; ; while( ! (ret = *src1 - *src2) && *src2) ; ++src1, ++src2; ; ; if ( ret < 0 ) ; ret = -1 ; ; else if ( ret > 0 ) ; ret = 1 ; ; ; return( ret ); ; } нет так static inline int strcmp(const char *__cs, const char *__ct)58 {59 register int __res;60 unsigned long __dummy;6162 __asm__ __volatile__(63 "mov.b @%1+, %3\n"64 "1:\n\t"65 "mov.b @%0+, %2\n\t"66 "cmp/eq #0, %3\n\t"67 "bt 2f\n\t"68 "cmp/eq %2, %3\n\t"69 "bt/s 1b\n\t"70 " mov.b @%1+, %3\n\t"71 "add #-2, %1\n\t"72 "mov.b @%1, %3\n\t"73 "sub %3, %2\n"74 "2:"75 : "=r" (__cs), "=r" (__ct), "=&r" (__res), "=&z" (__dummy)76 : "" (__cs), "1" (__ct)77 : "t");7879 return __res;80 } С так int strcmp(const char *str1, const char *str2) 18 { 19 const unsigned char *s1 = (const unsigned char *)str1; 20 const unsigned char *s2 = (const unsigned char *)str2; 21 int delta = 0; 22 23 while (*s1 || *s2) { 24 delta = *s2 - *s1; 25 if (delta) 26 return delta; 27 s1++; 28 s2++; 29 } 30 return 0; 31 } Изменено 16 октября 2013 пользователем F1sher Би май дарлинг http://www.youtube.com/watch?v=LhkUjA3D8ig Поделиться сообщением Ссылка на сообщение
Airfol #1040 16 октября 2013 (изменено) Вообще, наш препод дала нам вот такую реализацию как пример того, что можно придумать на Си int mystrcmp (const char *s1,const char *s2) { return ((*s1 == *s2) && *s1 && *s2 (*s1 == *s2)) ? ((*(s1+1) || *(s2+1)) ? (mystrcmp(s1+1, s2+1)) : (0)) : ((*s1 > *s2) ? (1) : (-1)); } И да, в остальном я разобрался можно просто char s[][] = {"abs","aass"}; делать и все хорошоА да, если кто-то может объясните что в строке происходит, то что ? : : я знаю типо if {1} : {2} вот, а именно про *(s1+1) || *(s2+1) и про рекурсию Изменено 16 октября 2013 пользователем Airfol Поделиться сообщением Ссылка на сообщение