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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ксюха21
0 / 0 / 0
Регистрация: 20.02.2011
Сообщений: 8
#1

Не копируется строка - C++

27.02.2011, 05:03. Просмотров 361. Ответов 2
Метки нет (Все метки)

Подскажите мне, пожалуйста, в чём проблема. Пытаюсь написать аналог функции strcpy, но выдает, при компиляции нормально, а когда запускаю, выдает попытку записи в защищенную память, вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
char* stringcopy (char*, char*);
int main (void)
{
    char *firstname = "aaaaaaaaaaaaaaaa";
    char *lastname ="bbbbbbbbb";
        stringcopy(firstname, lastname);
    printf ("My firstname is %s.\n", firstname);
    return 0;
}
char* stringcopy (char* firstname, char* lastname)
{int i=0;
    while ( i < sizeof(lastname) && lastname[i]!='\0' )
            firstname[i] = lastname[i];
            i++;
    firstname[i]='\0';
    return firstname;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2011, 05:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не копируется строка (C++):

Из файла копируется только первое слово - C++
Доброго всем здравия, духовного и телесного. Создаю в проекте текстовый файл, копирую в него какой-либо текст. Запускаю код, который должен...

Не копируется структура C++ (по введеному номеру телефона удалить информацию из файла) - C++
Рабочий код: Структура в заголовочном файле: struct contact{ int ID; std::string Name; std::string Surname; std::string...

Куда именно копируется значения аргумента при передачи в функцию? - C++
Куда именно копируется значения аргумента при передачи в функцию? И куда(где:) ) деваются эти копии в этом частном случае? ...

Дана строка. Подсчитать сколько раз первая строка входит во вторую - C++
Дана строка. Подсчитать сколько раз первая строка входит во вторую. Например: вводим &quot;при&quot; (строка должна вводиться с клавиатуры, как на...

Дана строка символов. Проверьте,является ли данная строка палиндромом - C++
Парни нужна помощь,нужен код решения этой задачи на языке с++. Дана строка символов. Проверьте,является ли данная строка палиндромом.

Почему строка, считанная из файла и такая же строка в программе не равны, хотя они, вроде бы, одинаковы? - C++
Есть две строки. MSK=&quot;Москва&quot; и from, считанная из текстовика, через getline Для проверки вывожу эти обе строки, на первый взгляд...

2
kazak
3038 / 2359 / 157
Регистрация: 11.03.2009
Сообщений: 5,405
Завершенные тесты: 1
27.02.2011, 07:50 #2
Потому что
Цитата Сообщение от Ксюха21 Посмотреть сообщение
C
1
2
char *firstname = "aaaaaaaaaaaaaaaa";
 char *lastname ="bbbbbbbbb";
обозначают константные строки, которые нельзя модифицировать в программе.
1
igorrr37
1648 / 1276 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
27.02.2011, 08:43 #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<stdio.h>
#include<string.h>
 
char* stringcopy (char*, char*);
 
int main (void){
        char firstname[] = "aaa";
        char *lastname ="bb";
        printf ("My firstname is %s.\n", strcpy(firstname, lastname));
        return 0;
}
 
char* stringcopy (char* firstname, char* lastname){
    char* begin=firstname;
    for(; *firstname=*lastname; ++lastname, ++firstname);
    return begin;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.02.2011, 08:43
Привет! Вот еще темы с ответами:

дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка должна вводиться с клавиатуры. - C++
Будьте добры,помогите с решением задачи: дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка...

Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо и справа н - C++
Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо...

Даны строка S, символ C и строка S0. Необходимо после каждого вхождения символа C в строку S вставить строку S0 - C++
Есть код... string s, s0; char c; cout &lt;&lt; &quot;Введите строку s, s0 и символ c: &quot;; getline(cin, s); ...

Строка string и строка char - C++
Ребят помогиме. В общем задание такое дана строка типа string и строка char которая содержит символ к. В общем если в строке типа String ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru