Символы и строки в С++

Символ – элементарная единица, некоторый набор которых несет определенный смысл. В языке программирования С++ предусмотрено использование символьных констант. Символьная константа – это целочисленное значение (типа int) представленное в виде символа, заключённого в одинарные кавычки, например 'a'. В таблице ASCII представлены символы и их целочисленные значения.

// объявления символьной переменной
char symbol = 'a';
//  где symbol – имя переменной типа  char
//  char – тип данных для хранения символов

Строки в С++ представляются как массивы элементов типа char, заканчивающиеся нуль-терминатором \0 называются С строками или строками в стиле С.

\0  — символ нуль-терминатора.

Символьные строки состоят из набора символьных констант заключённых в двойные кавычки. При объявлении строкового массива необходимо учитывать наличие в конце строки нуль-терминатора, и отводить дополнительный байт под него.

// пример объявления строки
char string[10];
//  где string – имя строковой переменной               
//      10 – размер массива, то есть в данной строке может поместиться 9 символов , последнее место отводится под нуль-терминатор.

Строка при объявлении  может быть инициализирована начальным значением, например, так:

char string[10] = "abcdefghf";

Если подсчитать кол-во символов в двойных кавычках после символа равно их окажется 9, а размер строки 10 символов,  последнее  место отводится под нуль–терминатор, причём компилятор сам добавит его в конец строки.

// посимвольная инициализация строки:
char string[10] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'f', '\0'};
// десятый  символ это  нуль-терминатор.

При объявлении строки не обязательно указывать её размер, но при этом обязательно нужно её инициализировать начальным значением. Тогда размер строки определится автоматически и в конец строки добавится нуль-терминатор.

//инициализация строки без указания размера
char string[] = "abcdefghf";
//всё то же самое только размер не указываем.

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

// symbols.cpp: определяет точку входа для консольного приложения.

#include "stdafx.h"
#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
    char string[] = "this is string - "; // объявление и инициализация строки
    cout << "Enter the string: ";
    char in_string[500]; // строковый массив для ввода  
    gets(in_string); // функция gets() считывает все введённые символы с пробелами до тех пор, пока не будет нажата клавиша Enter  
    cout << string << in_string << endl; // вывод строкового значения
    system("pause");
    return 0;
}

// код Code::Blocks

// код Dev-C++

// symbols.cpp: определяет точку входа для консольного приложения.

#include <iostream>
#include <cstdio>
using namespace std;

int main(int argc, char* argv[])
{
    char string[] = "this is string - "; // объявление и инициализация строки
    cout << "Enter the string: ";
    char in_string[500]; // строковый массив для ввода
    gets(in_string); // функция gets() считывает все введённые символы с пробелами до тех пор, пока не будет нажата клавиша Enter
    cout << string << in_string << endl; // вывод строкового значения
    return 0;
}

В строке 12 с помощью функции gets() считаются все введённые символы с пробелами до тех пор, пока во вводимом потоке не встретится код клавиши enter. Если использовать операцию cin то из всего введённого считается последовательность символов до первого пробела (см. Рисунок 1).

CppStudio.com
Enter the string: CppStudio.com
this is string - CppStudio.com
Для продолжения нажмите любую клавишу . . .

Рисунок 1 — Символы и строки

Таблица 1 — Функции для работы со строками и символами
Функция Пояснение
strlen(имя_строки) определяет длину указанной строки, без учёта нуль-символа
Копирование строк
strcpy(s1,s2) выполняет побайтное копирование символов из строки  s2 в строку s1
strncpy(s1,s2, n) выполняет побайтное копирование n символов из строки  s2 в строку s1. возвращает значения s1
Конкатенация строк
strcat(s1,s2) объединяет строку s2 со строкой s1. Результат сохраняется в s1
strncat(s1,s2,n) объединяет n символов строки s2 со строкой s1. Результат сохраняется в s1
Сравнение строк
strcmp(s1,s2) сравнивает строку s1 со строкой s2 и возвращает результат типа int: 0 –если строки эквивалентны, >0 – если s1<s2,  <0  — если s1>s2 С учётом регистра
strncmp(s1,s2,n) сравнивает n символов строки s1 со строкой s2 и возвращает результат типа int: 0 –если строки эквивалентны, >0 – если s1<s2,  <0  — если s1>s2 С учётом регистра
stricmp(s1,s2) сравнивает строку s1 со строкой s2 и возвращает результат типа int: 0 –если строки эквивалентны, >0 – если s1<s2,  <0  — если s1>s2 Без учёта регистра
strnicmp(s1,s2,n) сравнивает n символов строки s1 со строкой s2 и возвращает результат типа int: 0 –если строки эквивалентны, >0 – если s1<s2,  <0 — если s1>s2 Без учёта регистра
Обработка символов
isalnum(c) возвращает значение true, если с является буквой или цифрой, и false в других случаях
isalpha(c) возвращает значение true, если с является буквой,  и false в других случаях
isdigit(c) возвращает значение true, если с является цифрой, и false в других случаях
islower(c) возвращает значение true, если с является буквой нижнего регистра, и false в других случаях
isupper(c) возвращает значение true, если с является буквой верхнего регистра, и false в других случаях
isspace(c) возвращает значение true, если с является пробелом, и false в других случаях
toupper(c) если символ с, является символом нижнего регистра, то функция возвращает преобразованный символ с в верхнем регистре, иначе символ возвращается без изменений.
Функции поиска
strchr(s,c) поиск первого вхождения символа с в строке sВ случае удачного поиска возвращает указатель на место первого вхождения символа сЕсли символ не найден, то возвращается ноль.
strcspn(s1,s2) определяет длину начального сегмента строки s1, содержащего те символы, которые не входят в строку s2
strspn(s1,s2) возвращает длину начального сегмента строки s1, содержащего только те символы, которые входят в строку s2
strprbk(s1,s2) Возвращает указатель  первого вхождения любого символа строки s2 в строке s1
Функции преобразования
atof(s1) преобразует строку s1 в тип double
atoi(s1) преобразует строку s1 в тип int
atol(s1) преобразует строку s1 в тип long int
Функции стандартной библиотеки ввода/вывода <stdio>
getchar(с) считывает символ с со стандартного потока ввода, возвращает символ в формате int
gets(s) считывает поток символов со стандартного устройства ввода в строку s до тех пор, пока не будет нажата клавиша ENTER

Разработаем несколько программ, используя функции для работы со строками и символами.

Копирование строк

// str_cpy.cpp: определяет точку входа для консольного приложения.

#include "stdafx.h"
#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
    char s2[27] = "Counter-Strike 1.6 forever";          // инициализация строки s2
    char s1[27];                                         // резервируем строку для функции strcpy()
    cout << "strcpy(s1,s2) = " << strcpy(s1,s2) << endl; // содержимое строки s2 скопировалось в строку s1, возвращается указатель на s1
    cout << "s1=             " << s1            << endl; // вывод содержимого строки s1
    char s3[7];                                          // резервируем строку для следующей функции 
    cout << strncpy(s3, s2, 7) << endl;      // копируем 7 символов из строки s2 в строку s3
    system("pause");
    return 0;
}

// код Code::Blocks

// код Dev-C++

// str_cpy.cpp: определяет точку входа для консольного приложения.

#include <iostream>
#include <cstring>
using namespace std;

int main(int argc, char* argv[])
{
    char s2[27] = "Counter-Strike 1.6 forever";          // инициализация строки s2
    char s1[27];                                         // резервируем строку для функции strcpy()
    cout << "strcpy(s1,s2) = " << strcpy(s1,s2) << endl; // содержимое строки s2 скопировалось в строку s1, возвращается указатель на s1
    cout << "s1=             " << s1            << endl; // вывод содержимого строки s1
    char s3[7];                                          // резервируем строку для следующей функции
    cout << strncpy(s3, s2, 7) << endl;      // копируем 7 символов из строки s2 в строку s3
    return 0;
}

В строках 9, 10 создаём строковые массивы на 27 символов, словосочетание "Counter-Strike 1.6 forever" содержит 26 символов, последнее место в массиве займет нуль-символ. В строке 11 функция strcpy(s1,s2) копирует  значение строки  s2 в строку s1 и возвращает указатель на строку s1. Если строка s1 будет меньше строки s2, то скопируется то количество символов, которое вместится в  строку s2. Строка 10 всего лишь показывает, что в строке s1 содержится скопированное значение. В строке 14 функция strncpy(s3, s2, sizeof(s3)) выполняет копирование 7 символов строки s2 в строку s3 (см. Рисунок 2). 

CppStudio.com
strcpy(s1,s2) = Counter-Strike 1.6 forever
s1=             Counter-Strike 1.6 forever
CounterCounter-Strike 1.6 forever
Для продолжения нажмите любую клавишу . . .

Рисунок 2 — Символы и строки

Конкатенация строк

Использование функций strcat() и strncat(), для объединения строк, то есть для их конкатенации.

// str_cat.cpp: определяет точку входа для консольного приложения.

#include "stdafx.h"
#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
    char s1[30] = "I am ";
    char s2[] = "programmer on the C++!!!!";
    cout << strcat(s1,s2) << endl;               // объединяем строки s1 и s2, результат сохраняется в строке s1
    char s3[23] = "I am a good ";
    cout << strncat(s3,s2,10) <<  "!!!" << endl; // объединяем 10 символов строки s2 со строкой s3
    system("pause");
    return 0;
}

// код Code::Blocks

// код Dev-C++

// str_cat.cpp: определяет точку входа для консольного приложения.

#include <iostream>
#include <cstring>
using namespace std;

int main(int argc, char* argv[])
{
    char s1[30] = "I am ";
    char s2[] = "programmer on the C++!!!!";
    cout << strcat(s1,s2) << endl;               // объединяем строки s1 и s2, результат сохраняется в строке s1
    char s3[23] = "I am a good ";
    cout << strncat(s3,s2,10) <<  "!!!" << endl; // объединяем 10 символов строки s2 со строкой s3
    return 0;
}

В строке 11 функция strcat(s1,s2) объединяет строки s1 и s2, результат сохраняется в строке s1. По этому при объявлении строки s1 её размер установлен на 30 символов. В строке 13 функция strncat(s3,s2,10) объединяет 10 символов из строки s2(как раз помещается слово programmer) со строкой s3, результат сохраняется в строке s3. И по этому размер строки s3 также задан фиксировано (см. Рисунок 3).

CppStudio.com
I am programmer on the C++!!!!
I am a good programmer!!!
Для продолжения нажмите любую клавишу . . .

Рисунок 3 — Символы и строки

Сравнение строк

Рассмотрим работу функции strcmp(), остальные функции используются аналогично, так что каждую рассматривать не будем.

// str_cmp.cpp: определяет точку входа для консольного приложения.

#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;

int main(int argc, char* argv[])
{
    char s1[] = "www.cppstudio.com";
    char s2[] = "http://www.cppstudio.com";
    cout << " s1 == s1 -> " << setw(2) << strcmp(s1,s1) << endl; // строка s1 = s1
    cout << " s1 <  s2 -> " << setw(2) << strcmp(s1,s2) << endl; // строка s1 < s2
    cout << " s2 >  s1 -> " << setw(2) << strcmp(s2,s1) << endl; // строка s2 > s1
    system("pause");
    return 0;
}

// код Code::Blocks

// код Dev-C++

// str_cmp.cpp: определяет точку входа для консольного приложения.

#include <iostream>
#include <iomanip>
#include <cstring>
using namespace std;

int main(int argc, char* argv[])
{
    char s1[] = "www.cppstudio.com";
    char s2[] = "http://www.cppstudio.com";
    cout << " s1 == s1 -> " << setw(2) << strcmp(s1,s1) << endl; // строка s1 = s1
    cout << " s1 <  s2 -> " << setw(2) << strcmp(s1,s2) << endl; // строка s1 < s2
    cout << " s2 >  s1 -> " << setw(2) << strcmp(s2,s1) << endl; // строка s2 > s1
    return 0;
}

В строках 12, 13, 14 функция strcmp() выполняет сравнение строк, в различном порядке, таким образом были рассмотрены все возможные варианты работы данной функции. В первом случае строку s1 сравнивали с самой собой соответственно и результат равен 0. Во втором случае строка s1 оказалась меньше строки s2 поэтому результат равен 1. В третьем случае строка s1 по-прежнему меньше строки s2, но мы поменяли эти строки местами, таким образом, порядок параметров функции изменился и результат стал равен -1 (см. Рисунок 4).

CppStudio.com
 s1 == s1 ->  0
 s1 <  s2 ->  1
 s2 >  s1 -> -1
Для продолжения нажмите любую клавишу . . .

Рисунок 4 — Символы и строки

Обработка символов

Функции из данной группы умеют различать, к какому типу знаков относятся те или иные символы, например буквы, цифры, специальные знаки.

// issss.cpp: определяет точку входа для консольного приложения.

#include "stdafx.h"
#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
    char symbol    = 'd'; // буква
    char digit     = '9'; // цифра
    char space     = ' '; // пробел
    char character = '#'; // знак
    // функция isalnum() проверяет является ли её аргумент буквой или цифрой
    cout << symbol    << " - it is digit or alpha?: "; isalnum(symbol)    ? cout << "true\n": cout << "false\n";
    // функция isalpha() проверяет является ли её аргумент буквой
    cout << symbol    << " - it is alpha?:          "; isalpha(symbol)    ? cout << "true\n": cout << "false\n";
    // функция isdigit() проверяет является ли её аргумент цифрой
    cout << digit     << " - it is digit?:          "; isdigit(digit)     ? cout << "true\n": cout << "false\n";
    // функция isspace() проверяет является ли её аргумент пробелом
    cout << space     << " - it is space?:          "; isspace(space)     ? cout << "true\n": cout << "false\n";
    // функция islower() проверяет является ли её аргумент буквой нижнего регистра
    cout << symbol    << " - it is lower alpha?:    "; islower(symbol)    ? cout << "true\n": cout << "false\n";
    // функция isupper() проверяет является ли её аргумент буквой верхнего регистра
    cout << symbol    << " - it is upper alpha?:    "; isupper(symbol) ? cout << "true\n": cout << "false\n";
    system("pause");
    return 0;
}

// код Code::Blocks

// код Dev-C++

// issss.cpp: определяет точку входа для консольного приложения.

#include <iostream>
using namespace std;

int main(int argc, char* argv[])
{
    char symbol    = 'd'; // буква
    char digit     = '9'; // цифра
    char space     = ' '; // пробел
    char character = '#'; // знак
    // функция isalnum() проверяет является ли её аргумент буквой или цифрой
    cout << symbol    << " - it is digit or alpha?: "; isalnum(symbol)    ? cout << "true\n": cout << "false\n";
    // функция isalpha() проверяет является ли её аргумент буквой
    cout << symbol    << " - it is alpha?:          "; isalpha(symbol)    ? cout << "true\n": cout << "false\n";
    // функция isdigit() проверяет является ли её аргумент цифрой
    cout << digit     << " - it is digit?:          "; isdigit(digit)     ? cout << "true\n": cout << "false\n";
    // функция isspace() проверяет является ли её аргумент пробелом
    cout << space     << " - it is space?:          "; isspace(space)     ? cout << "true\n": cout << "false\n";
    // функция islower() проверяет является ли её аргумент буквой нижнего регистра
    cout << symbol    << " - it is lower alpha?:    "; islower(symbol)    ? cout << "true\n": cout << "false\n";
    // функция isupper() проверяет является ли её аргумент буквой верхнего регистра
    cout << symbol    << " - it is upper alpha?:    "; isupper(symbol) ? cout << "true\n": cout << "false\n";
    return 0;
}

В данной программе по использованию функций вопросов возникать не должно. Функции сами по себе возвращают целочисленное значение, положительное – true, отрицательное или  ноль – false. В формировании результата работы функций участвовал тернарный оператор, то есть выводилось сообщение true или false без всяких числовых значений (см. Рисунок 5).

CppStudio.com
d - it is digit or alpha?: true
d - it is alpha?:          true
9 - it is digit?:          true
  - it is space?:          true
d - it is lower alpha?:    true
d - it is upper alpha?:    false
Для продолжения нажмите любую клавишу . . .

Рисунок 5 — Символы и строки

Итак, мы рассмотрели больше половины функций, из тех, что есть в таблице. Остальные функции используются аналогично, так что по ним примеры программ разбирать не будем.

Автор: admin
Дата: 25.08.2012
Поделиться:

Комментарии

  1. CraigWew

    п»їTrustworthy SEO Agency India Can Increase Revenues of Small Businesses

    80% users search on Google and other search engines before making a purchase and more than 50% inquiries generated through search engines get converted. These two statistics prove the importance of Search Engine Optimization. There are many as such stats and facts that make a clear point: any small, mid or large scaled business need professional SEO services. Small businesses and startups often face budget issues. They can take help of any trustworthy SEO agency from India to get the best SEO service in their budget to increase their revenues.
    Search holds a great impact on consumers’ minds. According to the various statistics shared by major search engine optimization experts on various authorized websites such as Search Engine Land, Moz, SEO Journal, Digital Marketers India, Hubspot, etc. SEO captures a majority of the leads. Also, the leads coming from the organic search results have a higher conversion rate. These stats and consumer behavior make a clearer point that best SEO service is not a luxury, but a necessity for any business.
    To bypass the competition and to increase business growth each organization needs to use the Search Engine Optimization services. The big brands can invest enough money for the expert SEO service offered by a top SEO company or an SEO specialist, but small business owners often compromise on the quality of this service due to less budget. It’s a hard fact the small business and startups end up leaving the opportunities that can be created with the professional SEO service or use a cheap SEO service which yields no positive results.
    The small business owners and startups can take benefit of professional SEO services even in the limited budget. The best solution is finding a trustworthy SEO company based out of India. In India, there are many SEO experts who are working with the digital marketing agency and offer best-in-the-industry services. They can provide you the required SEO services in your budget. The wages can be negotiated with an SEO agency India to get better services at lower rates. However, don’t fall for cheap SEO service that charges less and promise to give more as expertise comes at its own cost. You must see the portfolio or ask proper questions before contracting a company for your business.
    The SEO experts in India are skilled with the best practices of search engine optimization. Also, there are some SEO specialists in India such as Ash Vyas, who specialize in creating the best search engine optimization strategy for a business in stated budget. The SEO professionals will create a clear plan and will also share what can be the expected results. This way you can be well aware of your investment and returns. This helps in making a better business decision.
    A good idea is to find and contract a trustworthy SEO company from India that offers the best SEO services as soonest as possible. You may also start with a small budget and limited activities to start getting your WebPages indexed and boosting your keywords in search engines. Don’t wait for the perfect time or a day when you will have thousands of dollars to invest in the best SEO services. Starting early will help you get quicker results when you can go aggressive with your marketing approach. A trustworthy SEO company based out of India will help you define your current and future plans to yield good results. More indexed pages boosted rankings and credible brand of your business made with continuous professional SEO practices will double inquiries, business, and revenues. Any small business can start with two-digit investment in the professional SEO services. There are many SEO agencies in India that offer low budget yet result from oriented Search Engine Optimization services.

    Visit site: http://gameone.club/

    cebu classifieds ads jobs

    • CraigWew

      п»їUnderstanding The Essence Of Graphic Design

      When you are intending to market or promote your service or product, one method to attract and persuade the target audience is through effective graphic design. This is an efficient means to demonstrate your goals and intention in transmitting your message about your business. Among the most effective ways of marketing your business is by visual aids such as magazine ads, business logo, album cover and a simple computer print-out. The design of the logo created by a graphic designer is going to provide your organization some kind of recognition in the market. Efficient graphic designs based on focus, interesting and relevant are those that are recognized by large number of consumers.

      Graphic designers employ drawn, painted, photographed or computer printout images that are popular and can be easily found in TV ads, menus, books and magazines. The crucial components of graphic design are images, typography and white space. Attractive and excellent graphic designs are often overlooked by people though they are now part of our daily life. The huge billboard seen in main urban streets, candy wrapper and the favorite T-shirt you put on are some of the works of graphic designers. Graphic designs are techniques to persuade, organize, stimulate, locate, inform, attract and produce fun and attention.

      The combination of art ideas and modern technology is an exciting process of graphic design. Graphic designers are appreciating a wide range of means of communication and devices to pass accurate information from client to the targeted audience. Images and typography are the major devices used by graphic designers. By presenting the ideas they have to their customers, graphic designers are experienced and talented enough to share their creativity through such works as logo designs and attractive websites.

      In some instances, graphic designers depend on attractive words in order to convey information. They are creative in using words just like an experienced writer. For them, precise words appear like the things that they mean. To attract your attention, they use visual aids like one may use personal letters to convey a message. You are capable of noticing these messages or recognizing the brand on the package, truck or van and posters. Graphic designers are experts in promoting some valuable information through publications, packaging and signs and visual films.

      The best approach a graphic designer can communicate with the targeted audience is through a combination of images and typography. The correct balancing and creativeness in presentation by accurate wordings and distinctive management of images are fine ideas in this field of graphic design.

      The designers are the connection between the client and targeted audience. The client is basically quite close to the project, understanding the project presented in a wide range of techniques as audiences are too big in supporting them through the process of creation. Nothing like the client and the crowd, the graphic designers are skilled and experienced enough to create a message and the methods of providing it through an effective approach. They deal with their clients in understanding the purpose of the message. They also work together with other professionals from the fields of logo and graphic design.

      Visit site: http://gameone.club/

      surveys from exile

      • CraigWew

        п»їThe Importance of Establishing Rapport With the Customer in Real Estate and General Sales

        The importance of establishing rapport with the customer.
        Establishing rapport with a customer has to be earned and must be approached as a very integral part of the sales process.
        In order to get a customer and yourself to relate on a real one to one basis, involves two things!
        First, you will have to be aware and be there! Second you must understand that there are two different stages that will occur during this process.
        A-Be there-what does that mean?
        o Most people don’t really listen to another person as they talk. Generally they are so busy formulating their next answer or statement that they couldn’t possibly really listen.
        o If this sounds like you, being there means shut up and listen!
        B-What is the first or initial stage?
        o Generally you have just a few minutes to establish yourself in the customers mind as someone they want to deal with.
        o When in doubt it is best to first ask questions that will draw them out and talk about themselves.
        o It is also always safe to appear as a professional-I don’t mean stoic or dry, but someone who knows what they are doing and talks and looks the part.
        C-Other stages
        o As time goes on, through conversation and questions they will have, you will either establish your ability or not.
        o Be aware that they will probably be measuring you for a while. The good news is that at some point, if you have been successful at establishing rapport-they will relax and you can both concentrate on finding or selling the home.
        What else can help me develop rapport?
        o By trying to understand different personality types and then by saying and asking the right questions.
        o If you have good rapport (get on the same wave length as the customer) then the selling is basically over, now it’s just a matter of finding the right home or filling out the listing papers.
        What about different personalities
        o Since this is not a book on psychiatry, for now just understand two main types.
        o There are introverted and extroverted people.
        o You know the type. Think about three people you know that fit each classification.
        What about body Language and speech patterns?
        o If they talk fast or slow, try to mimic their speech patterns.
        o If they talk loud or soft, do the same. Are they leaning forward or backward?
        o Needless to say, there are lots of books written on this subject. Just be aware that it is an important factor-especially when you’re sitting in a conference room or at someone’s home discussing a $400,000 deal.
        Developing rapport is a skill that can be learned and improved upon.
        o We all have experienced a salesperson that sold us something and yet we didn’t feel like we were being sold. The reason is he or she, made you feel comfortable to where you trusted them.
        How do we develop rapport?
        o Use your eyes and ears and ask questions. To explain
        o Use the eyes:
        o Look at their dress-their car-their personal possessions and I mean really look at them and decipher what that tells you about them.
        o Use the ears:
        o Listen to what they say and ask questions to get to the bottom of their real MOTIVATION!
        Now during all this conversation, there will probably be one or two things you’ll discover that you have in common with them. (Family, geographical areas, fishing, etc) When you come across common ground, let them know you’re familiarity and then take a minute to discuss it with them.
        What is the Goal?
        o Once they accept you as one of them you’re in position to really have a great experience in the sale as you’re now working together then as a team—you’re no longer the salesman you’re now in an advisory position.
        o Remember, the customer either will or will not allow you to enter his world. If you understand this and really work hard to become empathetic with him/her, you can gain a position of trust. In most cases, you will actually see them relax (body language) when this happens you’re on the way.
        o To illustrate this have you ever given a speech and noticed that as you finally connected with an audience member they will nod in approval. These things may all seem trite but they aren’t.
        In closing, if you can earn a customers trust, selling a product or service is much easier and the experience can be enoyable for everyone involved.
        Always remember that a Win/Win is the best situation.

        Visit site: http://gameone.club/

        article marketing tutorial

  2. wElenaFax

    Работа в интернете

  3. npavelFax

    Заработок в интернете официальное трудоустройство.

    • CraigWew

      п»їInside Programming: Python

      One of the high-level programming languages, Python is considered to be the most dynamic language that focuses on code readability. The best part of learning this language is that there are fewer steps in execution as compared to Java or C++.
      Founded by Guido Van Rossum in the year 1991, it enjoys the status of being used in top organizations all over the world. Since its inception, the language has evolved drastically, imbibing advancements as the years have passed.
      Benefits of Python
      Interactive
      Interpreted
      Dynamic
      High-Level
      Portable
      Most of the companies in fields like gaming, networking, graphic design applications, etc use this language as it has the most dynamically challenging module. Nearly 14% of the programming community of this world uses this language across different platforms like Linux, MacOS, Windows and UNIX.
      Why We Love Python?
      If you are using a multi-protocol network, then this is the best language. It definitely increases your overall productivity.
      Python has large and extensive support libraries like string operations, Internet, web service tools, operating system interfaces and protocols. If you are looking for the best support system, then look no further. Python has all the important tasks scripted into it
      A high-level language that has user-friendly structures that is also easy to learn.
      Python has Enterprise Application Integration which makes Web developing easy by calling COB and COBRA components that are integrated within its structures. It’s powerful control abilities help in calling C, C++, Java through Jython
      Future of Python
      Computing world’s giant organization Google has made Python one of its official language. Making the future for Python enthusiasts secure. Learn this dynamic and robust programming language to get the best jobs in the industry!

      Visit site: http://gameone.club/

      seo 2018 kindle

  4. PRO_in_ALL

    здравствуйте, такие дела: я создал класс, в нём — символьный класс, хочу заполнить его с помощью gets, и мне вылезает ошибка что то вроде «функция ‘gets’ не является безопасной…» и не компилируется, скажите какие есть альтернативы заполнения символьного массива? только не по одной букве.

     

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.