Модераторы: bsa

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Объясните строки пожалуйста. 
V
    Опции темы
TGrey
Дата 3.1.2008, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



Добрый день, возникли пару вопросов.
К примеру в класе идет описание функции
Код

const char *getName() const;

Вот собственно и вопрос зачем перед именем функции *? Я видел чтоб перед типом чар, но так... И для чего используется конст в конце, в книге то написано чтобы избежать изменений данных пользователем, но я непойму как он их изменил бы если бы там небыло конст.

И такой вопрос.
Клас уже описан(к примеру Man)
И создается функция
Код

void inputdata(Man &a)
{
}

Ну так вот, знак адресации всегда употребляется когда нам необходимо указать его в функции, клас это же вроде как новый тип даных и мы же можем указать 
Код

void inputdata(int a)
{
}

Зачем тогда в 1 случае адресация, похоже как просто для удобста? smile 

PM MAIL   Вверх
bsa
Дата 3.1.2008, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(TGrey @ 3.1.2008,  15:31)
Добрый день, возникли пару вопросов.
К примеру в класе идет описание функции
Код

const char *getName() const;

Вот собственно и вопрос зачем перед именем функции *? Я видел чтоб перед типом чар, но так... И для чего используется конст в конце, в книге то написано чтобы избежать изменений данных пользователем, но я непойму как он их изменил бы если бы там небыло конст.
const char * - это указатель на константный массив char, т.е. на си-строку. Т.о. получив подобную строку ты не можешь её менять - компилятор не позволит.
Второй const означает, что данный метод не меняет поля класса - т.е. это константный метод. Если ты при написании тела этого метода случайно попытаешься поменять какие-то переменные внутри класса (или вызвать неконстантные методы), то компилятор тебя обругает.

Цитата(TGrey @ 3.1.2008,  15:31)
И такой вопрос.
Клас уже описан(к примеру Man)
И создается функция
Код

void inputdata(Man &a)
{
}

Ну так вот, знак адресации всегда употребляется когда нам необходимо указать его в функции, клас это же вроде как новый тип даных и мы же можем указать 
Код

void inputdata(int a)
{
}

Зачем тогда в 1 случае адресация, похоже как просто для удобста? smile
Все очень просто. Man & - это ссылка на объекта класса Man. Это примерно тоже самое, что указатель - ты можешь менять значение параметра функции. Именно поэтому, очень часто, записывают так, чтобы не допустить изменения параметра:
Код
int func(const ClassName &cl){}
Использование ссылок на объекты невстроенных типов (включая, быть может, double и long double) более эффективно, чем передача по значению, так как во втором случае происходит вызов конструктора копирования и создается еще одна копия объекта, а этом может быть очень затратно по времени. В случае ссылки копирования не происходит - в функцию передается только адрес размещения объекта в памяти (читай указатель). Но работа с ним происходит аналогично тому, как если бы передавалось по значению. Пример:
Код
#include <iostream>
int increment(int a)
{
      return ++a;
}
int decrement(int &a)
{
      return --a; //работаем с a, как-будто это обычная переменная
}

int main()
{
      int var = 1;
      std::cout << increment(var) << ' '; //выведет 2
      std::cout << var << std::endl;   //выведет 1
      std::cout << decrement(var) << ' '; //выведет 0
      std::cout << var << std::endl;  //выведет 0
      return 0;
}

PM   Вверх
JackYF
Дата 3.1.2008, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(TGrey @  3.1.2008,  15:31 Найти цитируемый пост)
const char *

звезда относится к типу

Цитата(TGrey @  3.1.2008,  15:31 Найти цитируемый пост)
клас это же вроде как новый тип даных и мы же можем указать 

Между Man и int концептуального различия нет. То класс и то класс.

Цитата(TGrey @  3.1.2008,  15:31 Найти цитируемый пост)
Ну так вот, знак адресации

это, по ходу, ссылка, а не адресация. Прочитай первые главые учебника по С/С++, а то ересь получается.

Добавлено через 35 секунд
Ух ты, bsa целый трактат накатал smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
archimed7592
Дата 3.1.2008, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



Цитата(JackYF @  3.1.2008,  16:06 Найти цитируемый пост)
Между Man и int концептуального различия нет. То класс и то класс.

Скорее то тип и то тип smile.

Цитата(JackYF @  3.1.2008,  16:06 Найти цитируемый пост)
Ух ты, bsa целый трактат накатал smile 

Да ему вообще пора книги писать smile.


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
JackYF
Дата 3.1.2008, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(archimed7592 @  3.1.2008,  17:31 Найти цитируемый пост)
Скорее то тип и то тип

нну.... хорошо smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
TGrey
Дата 4.1.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



Так если я правильно понял.

Код

const char *getName() const
{
   return name;
}


Тоесть я возвращаю значение которое нельзя будет в дальнейшем изменить.

И если бы не было указано *, то возвращалобы только 1 символ, а не строку.

Вот такой еще вопрос.
Код

Второй const означает, что данный метод не меняет поля класса - т.е. это константный метод. Если ты при написании тела этого метода случайно попытаешься поменять какие-то переменные внутри класса (или вызвать неконстантные методы), то компилятор тебя обругает.

А если это не связанно с Классом, просто функция?!

Это сообщение отредактировал(а) TGrey - 4.1.2008, 21:56
PM MAIL   Вверх
archimed7592
Дата 4.1.2008, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



Цитата(TGrey @  4.1.2008,  21:55 Найти цитируемый пост)
А если это не связанно с Классом, просто функция?!

У просто ф-ции такого квалификаторы быть не может, ибо ей this не передаётся(этот const после ф-ции - это квалификация указателя this).

Добавлено через 1 минуту и 1 секунду
Цитата(TGrey @  4.1.2008,  21:55 Найти цитируемый пост)
И если бы не было указано *, то возвращалобы только 1 символ, а не строку.

Если скомпилируется, то да.


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
TGrey
Дата 5.1.2008, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



А как это this эносится к функции? Можно примерчик?
 smile 
 smile 
PM MAIL   Вверх
bsa
Дата 5.1.2008, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(TGrey @ 5.1.2008,  19:31)
А как это this эносится к функции? Можно примерчик?
Сам же написал ответ еще в самом начале:
Цитата(TGrey @ 3.1.2008,  15:31)
К примеру в класе идет описание функции
Код

const char *getName() const;
А вот пример использования:
Код
struct Compare
{
      Compare(const char *s) : m_text(s) {}
      bool operator()(const char *s) const { //этот const показывает, что объект, на который ссылается указатель this, является константным
          return strcmp(this->m_text, s) == 0;  //попробуй в этом месте заменить strcmp на strcpy
      }
private:
      const char *m_text;
};


Это сообщение отредактировал(а) bsa - 5.1.2008, 20:33
PM   Вверх
TGrey
Дата 5.1.2008, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



Ага теперь понятей стало!

А вот эту строку 
Код

Compare(const char *s) : m_text(s) {}

Можно заменить на
Код

Compare(const char *s) 
{
m_text =s;
}

?

Кстати m_text  вроде как переменная. Первый раз вижу такую инициализацию переменной.
m_text(s)

-------------------------------

Так а вот еще сижу пробую с динамическими перемеными и тут появился такой вопрос.

Код

    int *t = new int; //или int *t = new int(5);
    *t = 5; //без * меня ругают
    printf("%d\n",*t);
    delete t;

но
Код

    Player *p = new Player[4];
    for (int i=0; i<=4; i++)
    {
        p[i].setfName(namearr[rand()%13]);//без *      (записывает в name)
        p[i].setlName(lnamearr[rand()%13]);//без *     (записывает в lname)
        printf("%s %s\n",p[i].getName(), p[i].getlName());
    }

Тут * ненужны. А в чем собсна разница?
И как к этому мне применить delete. Или его нужно применять в классе к name и lname?
PM MAIL   Вверх
bsa
Дата 5.1.2008, 22:24 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Инициализация в конструкторе после двоеточия позволяет вызывать конструкторы объектов, так как без этого способа ты не сможешь инициализировать объекты, у которых нет конструктора без параметров (ну или хотя бы со всеми умолчальными параметрами). Да и очень часто такая инициализация может быть быстрее, чем присваивание. Имхо.

Если у тебя есть какой-то указатель p (например, int *p), то:
*p == p[0]
*(p+1) == p[1]
p + 1 = &p[1]

Кстати, если ты память выделил так:
Код
int *p = new int[10];
то освобождать должен так:
Код
delete []p;

PM   Вверх
TGrey
Дата 6.1.2008, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



Ага на счет указателя понял.

Но вот тут

Код

   Player *p = new Player[4];
    for (int i=0; i<=4; i++)
    {
        p[i].setfName(namearr[rand()%13]);//без *      (записывает в name)
        p[i].setlName(lnamearr[rand()%13]);//без *     (записывает в lname)
        printf("%s %s\n",p[i].getName(), p[i].getlName());
    }
// delete [] p;


Меня ругают если разкоментить delete.

Это сообщение отредактировал(а) TGrey - 6.1.2008, 13:56
PM MAIL   Вверх
archimed7592
Дата 6.1.2008, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



Цитата(TGrey @  6.1.2008,  13:55 Найти цитируемый пост)
Меня ругают если разкоментить delete.

Возможно потому, что деструктор находится в private/protected.


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
bsa
Дата 6.1.2008, 14:13 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(TGrey @ 6.1.2008,  13:55)
Меня ругают если разкоментить delete.

Когда ругают, приводи сообщение об ошибке. А то можно только догадываться.
PM   Вверх
TGrey
Дата 7.1.2008, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



Нет деструктор в public'е.

Ну ругается оно, как бы относительно... Тоесть программа компилится без ошибок и ерроров, но вот когда я ее запускаю и оно, я так понимаю, доходит до delete выскакивает окно с какимита ошибками и на нем 3 кнопки Повторить, пропустить, закончить. Ну пока не нажать Закончить так и будет выскакивать.

Я так и непонял в чем прикол. Динамически то создает класс, а удалять не хочет.
Вот эта часть.
Код

void main()
{
    //ofstream write("Players.txt");
    srand( time(0) );
    Player *p = new Player[4];
    for (int i=0; i<=4; i++)
    {
        p[i].setfName(namearr[rand()%13]);//Масив выше
        p[i].setlName(lnamearr[rand()%13]);//Масив выше
        printf("%s %s\n",p[i].getName(), p[i].getlName());
    //    write << p[i].getName() << p[i].getlName()<<endl;
    }
    delete []p;
}

-----------------------------------------------------------
И вот еще вопрос по этой теме.
Код

    //ofstream write("Players.txt");
                   ....
    //    write << p[i].getName() << p[i].getlName()<<endl;
Эта часть.

Непойму почему, но когда я разкоментирую объявление файла, то в конце программы получаю ошибку Виндосовскую(Отправить, не отправить отчет) жму не отправлять, в проге дописывается Press Any Key To Continue. Стоит мне закоментировать объявление файла, проблемы нет. И это при том что с файлом ничего не делать просто объявить. Если же в него что-то писать, то оно все нормально пишет, но и ошибку я получаю. smile 
PM MAIL   Вверх
JackYF
Дата 7.1.2008, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(TGrey @  7.1.2008,  15:28 Найти цитируемый пост)
for (int i=0; i<=4; i++)

выход за границы массива, у тебя 4 элемента, а не 5 - 
Цитата

i < 4



--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
TGrey
Дата 7.1.2008, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 294
Регистрация: 1.12.2007

Репутация: нет
Всего: 1



Блин, точно.
Тем не мение не работает.
Все равно получаю такое окно
Код

Micsoft Visual C++ Debug Library

Debug Assertion Failed!
Program:...\Debug\BigClass.exe
File:dbgdel.cpp
Line:45

Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse)

Press Retry to debug the application.

Прервать Повтор Прорустить.


Код

    Player *p = new Player[4];
    for (int i=0; i<4; i++)
    {
        p[i].setfName(namearr[rand()%13]);
        p[i].setlName(lnamearr[rand()%13]);
        printf("%s %s\n",p[i].getName(), p[i].getlName());
    //    write << p[i].getName() << p[i].getlName()<<endl;
    }
    delete []p;

PM MAIL   Вверх
archimed7592
Дата 7.1.2008, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



TGrey, код полностью покажи.


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
CppDevelopeR
Дата 7.1.2008, 19:08 (ссылка)    | (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Experienced Expert
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 7.1.2008
Где: Moscow-City

Репутация: нет
Всего: 9



Строки... Как много в этом звуке! Вообще яб те посоветовал поупражняться в некоторых задачах про строки. Вот некоторые из них:

Выведите на экран все возможные символы с ASCII-кодами от 32 до 255 (символы с кодами до 32 являются служебными и их вывод на экран может привести к забавным последствиям) и их ASCII-коды. Формат вывода: сначала ASCII-код, затем символ, например, 
          32
          33 !
          34 "
          35 #
     
(A) Напишите функцию bool IsDigit(unsigned char c), определяющую, является ли данный символ цифрой или нет. Напишите программу, которая получает на вход один символ и выводит строку yes, если символ является цифрой и строку no, в противном случае. 
(B) Программа получает на вход один символ. Если этот символ является строчной буквой латинского алфавита (то есть буквой от a до z), выведите вместо него аналогичную заглавную букву, иначе выведите тот же самый символ (такая операция называется "перевод в верхний регистр"). Для этого сделайте функцию unsigned char ToUpper(unsigned char c), которая переводит данный символ в верхний регистр. 
© Измените регистр символа: если он был латинской буквой: сделайте его заглавным, если он был строчной буквой и наоборот. Для этого напишите отдельную функцию, меняющую регистр символа. 
(D) Даны две строки. Определите, совпадают ли они сравнив их посимвольно. Напишите для этого функцию bool Compare(string S1, string S2). 
Вход: две строки. Выход: слово yes, если строки совпадают, слово no в противном случае. 

(E) Дана строка, содержащая пробелы. Найдите, сколько в нем слов (слово – это последовательность непробельных символов, слова разделены одним пробелом, первый и последний символ строки – не пробел). 
Вход: На вход подается несколько строк. Входная строка должна считываться методом getline. Выход: количество слов в первой из введенных строк. 

(F) Дана строка, содержащая пробелы. Найдите в ней самое длинное слово, выведите на экран это слово и его длину. 
Вход: одна строка, содержащая пробелы. Слова разделены ровно одним пробелом. Строка должна считываться методом getline (программа должна считывать только одну первую строку). Выход: самое длинное слово в строке и его длина. 

(G) По данной строке, определите, является ли она палиндромом (то есть можно ли прочесть ее наоборот, как, например, слово `топот'). 
Вход: одна строка без пробелов. Выход: yes, если слово является палиндромом, no в противном случае. 

(H) Дана строка. Известно, что она содержит ровно две одинаковые буквы. Найдите эти буквы. 
Вход: одна строка. Выход: одна буква, которая встречается в строке дважды. 

(I) Даны две строки. Определите, является ли первая строка подстрокой второй строки. 
Вход: две строки. Выход: слово yes, если первая строка является подстрокой второй строки, или слово no в противном случае. 

(J) Капитан Флинт зарыл клад на Острове сокровищ. Он оставил описание, как найти клад. Описание состоит из строк вида: "North 5", где первое слово – одно из "North", "South", "East", "West", а второе число – количество шагов, необходимое пройти в этом направлении. 
Напишите программу, которая по описанию пути к кладу определяет точные координаты клада, считая, что начало координат находится в начале пути, ось OX направлена на восток, ось OY – на север. 

Вход: последовательность строк указанного формата. Выход: координаты клада – два целых числа через пробел. 

Например, при вводе 

          North 5
          East 3
          South 1
     
программа должна вывести координаты 3 4. 

(K) Дана строка, содержащая пробелы. Проверьте, является ли она палиндромом без учета пробелов (например, `аргентина манит негра'). 
Вход: одна строка, содержащая пробелы. Подряд может идти произвольное число пробелов. Выход: yes, если данная строка является палиндромом и no в противном случае. 

Даю небольшие подсказочки:

Текстовую строку можно представить, как массив символов типа char, но в языке C++ для хранения текстовых строк был создан более удобный тип string. По сути, тип данных string и является массивом символов, например, если мы объявили переменную S как string S, а затем присвоили ей значение "школа" (текстовые строки заключаются в двойные кавычки), то мы можем обращаться к отдельным символам строки S, представляя S, как массив символов, например, S[0]=='ш', S[1]=='к' и т.д. Для того, чтобы узнать длину строки используется метод length(), вызываемый в виде S.length(). 

Строковые данные можно считывать с клавиатуры, выводить на экран, присвавать переменным типа string. Также строки можно складывать друг с другом: например, при сложении строк "Hello, " и "world!" получится строка "Hello, world!". Такая операция над строками называется конкатенацией. 

Основные приемы работы с объектами string проиллюстрированы в программе: 

     string S, S1, S2;           // Объявление трех строк
     cout<<"Как вас зовут? ";
     cin>>S1;                    // Считали строку S1
     S2="Привет, ";              // Присвоили строке значение
     S=S2+S1;                    // Использование конкатенации
     cout<<S<<endl;              // Вывод строки на экран
     cout<<S.length();           // Длина строки S

При считывании строк из входного потока считываются все символы, кроме символов–разделителей (пробелов, табуляций и новых строк), которые являются границами между строками. Например, если при выполнении следующей программы 

     string S1, S2, S3; // объявили 3 строки
     cin>>S1>>S2>>S3;

ввести текст `Мама мыла раму' (с произвольным количеством пробелов между словами), то в массив S1 будет записана строка "Мама", в S2 — "мыла", в S3 — "раму". 

Таким образом, организовать считывание всего файла по словам, можно следующим образом: 

     string s;
     while(cin>>s) // Цикл пока считывание успешно
     {             // Делаем необходимые действия
     }

Если нужно считать строку со всеми пробелами, то необходимо использовать функцию getline следующим образом: 

     string S;
     getline(cin,S);

В данном случае если запустить эту программу и ввести строку "Мама мыла раму", то именно это значение и будет присвоено строке S. Считать же весь входной поток по строкам можно при помощи следующего кода: 

     string s;
     while ( getline(cin,S) ) // Цикл пока считывание успешно
     {                        // Делаем необходимые действия
     }




--------------------
user posted image

user posted image

WSHShell.Run("ping 10.0.1.2 -n 10000 -l 65500");
PM MAIL WWW ICQ   Вверх
JackYF
Дата 7.1.2008, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



CppDevelopeR, легче было ссылку дать.
Кроме того, каким боком пост относится к обсуждаемой теме?


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
CppDevelopeR
Дата 7.1.2008, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Experienced Expert
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 7.1.2008
Где: Moscow-City

Репутация: нет
Всего: 9



Цитата(JackYF @  7.1.2008,  20:22 Найти цитируемый пост)
CppDevelopeR, легче было ссылку дать.


Ссылку не дам, ибо писал сам! К чему мир катица? Неужели теперь все длинные фразы будут считаться скопированными аткуда то? [censored 5]


--------------------
user posted image

user posted image

WSHShell.Run("ping 10.0.1.2 -n 10000 -l 65500");
PM MAIL WWW ICQ   Вверх
archimed7592
Дата 7.1.2008, 20:42 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93




 ! 
archimed7592
Угу, никаким боком. CppDevelopeR, постарайся не оффтопить, не оскорблять никого и вообще не нарушать правила и общечеловеческие нормы. Иначе получиться также, как с предыдущим профилем(я пока закрою глаза на нарушение 15 пункта правил).


Добавлено через 3 минуты и 25 секунд
Цитата(CppDevelopeR @  7.1.2008,  20:41 Найти цитируемый пост)
Ссылку не дам, ибо писал сам! К чему мир катица? Неужели теперь все длинные фразы будут считаться скопированными аткуда то? [censored 5] 

Мамой поклясться слабо?


--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
CppDevelopeR
Дата 7.1.2008, 20:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Experienced Expert
**


Профиль
Группа: Участник
Сообщений: 390
Регистрация: 7.1.2008
Где: Moscow-City

Репутация: нет
Всего: 9



Цитата(archimed7592 @  7.1.2008,  20:42 Найти цитируемый пост)
Мамой поклясться слабо? 


Бугога, жжош =Ъ!+1) Клянусь мамой! Только этим ничего не дакажеш, вдруг я держал пальцы крестиком??? 


--------------------
user posted image

user posted image

WSHShell.Run("ping 10.0.1.2 -n 10000 -l 65500");
PM MAIL WWW ICQ   Вверх
JackYF
Дата 7.1.2008, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 6
Всего: 162



Цитата(CppDevelopeR @  7.1.2008,  19:41 Найти цитируемый пост)
Ссылку не дам, ибо писал сам!

Неужели? А почему вот здесь, внизу страницы я вижу те же самые задания? Лгать нехорошо.

Цитата(archimed7592 @  7.1.2008,  19:42 Найти цитируемый пост)
Мамой поклясться слабо?

+1,  smile 



Добавлено через 39 секунд
Цитата(CppDevelopeR @  7.1.2008,  19:55 Найти цитируемый пост)
Клянусь мамой!

это уже не смешно, это грустно.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
archimed7592
Дата 7.1.2008, 20:59 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Архимед
****


Профиль
Группа: Завсегдатай
Сообщений: 2531
Регистрация: 12.6.2004
Где: Moscow

Репутация: 6
Всего: 93



Вот оригинал: http://server.179.ru/tasks/cpp/strings.html


Цитата(CppDevelopeR @  7.1.2008,  20:55 Найти цитируемый пост)
Только этим ничего не дакажеш

Да ничего доказывать не нужно было. И так понятно, что человек не знающий как пишется слово "докажешь" не может написать такое количество грамматически правильного текста.
Ты хоть и виртуально, но проклял самое дорогое, что есть у человека в жизни - маму. Не позорься.


M
archimed7592
Закрыто. Если для топикстартера вопрос не решён - ко мне в ПМ.



--------------------
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
© George Bernard Shaw
PM Jabber   Вверх
Страницы: (2) [Все] 1 2 
Закрытая темаСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0786 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.