Форум программистов, компьютерный форум CyberForum.ru

Пределать программу работы с символами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Организовать перегрузку оператора (=) http://www.cyberforum.ru/cpp-beginners/thread408133.html
Тема: Разработка алгоритмов и программ по реализации перегрузки операторов Задание: Для создания объекта a, разработанного класса – вектор (одномерный массив), реализовать перегрузку операции = (a=b). Содержимое объекта (a,b их векторов), до и после выполнения операции, вывести на экран. Добавлено через 27 минут up ребята...срочно нужно...
C++ Альтернатива функции strspn Кто знает, как написать свою функцию, которая выполняла бы те же действия, что и функция strspn на языке си??? И если возможно то и функции: strcpy http://www.cyberforum.ru/cpp-beginners/thread408122.html
C++ Приветствую всех, нужен Ваш совет
Подскажите пожалуйста, можно ли из .exe программы, написанной на с#, вернуть ее обратно и вытащить из нее код программы?
Асемблерные вставки C++
Здравствуйте! Можете посоветовать литературу (или если у кого есть исходники) по поводу того как делать вставки AMS в C++ Builder. Спасибо
C++ Упорядочить полуслова 32-розрядного машинного слова по возрастанию http://www.cyberforum.ru/cpp-beginners/thread408118.html
Кто знает, как это сделать? Вот 2 структуры: struct HalfWord { unsigned char _byte2; unsigned char _byte1; }; struct Word { HalfWord _half1;
C++ Здача про кирпич и отверстия. Люди, кому не трудно, помогите, пожалуйста, решить задачку. "Заданы размеры A,B прямоугольника отверстия и размеры x,y,z кирпича. Определить, пройдёт ли кирпич через отверстие". Заранее спасибо. подробнее

Показать сообщение отдельно
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
15.12.2011, 16:21     Пределать программу работы с символами
Цитата Сообщение от Ropsat Посмотреть сообщение
char str1[] = "3456"
sizeof( str1 ) == 5 (четыре символа + нуль-терминатор)

Цитата Сообщение от Ropsat Посмотреть сообщение
for (i=4;i>=0;i--) str1[i+1]=str1[i];
Здесь происходит выход за пределы памяти массива.

Добавлено через 53 секунды
C
1
char str1[6] = "3456"; // теперь есть место для сдвига
Добавлено через 1 минуту
там ещё нуль-терминатор в конце выставить надо

Добавлено через 2 минуты
Короче:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
 
int main( int argc, char ** argv )
{
   char buffer[8];
   const char * str = "3456";
   int i;
   
   buffer[0] = '1';
 
   for( i = 1; i < 5; i++ )
      buffer[i] = str[i - 1];
 
   buffer[5] = '1';
   buffer[6] = 0;
   
   puts( buffer );
   
   return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru