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

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.86
DeeR
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
#1

Strncpy - C++

25.05.2009, 06:04. Просмотров 2520. Ответов 12
Метки нет (Все метки)

Напишите пожауйста на С аналог функции Strncpy
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2009, 06:04     Strncpy
Посмотрите здесь:

strncpy - C++
Дана строка: djh,dfkh,sdj. Как последовательно по отдельности записать в strncpy текстовые части: djh dfkh sdj

про strncpy () - C++
привет=))) вот чето с этой функцией не пойму пример есть #include <iostream> using namespacr std; int main () { const int...

Ошибка в функции (strncpy) - C++
Надо прочитать файл содержащий что-то подобное: 1. Nomer reisa: 1 ves bagazha: 1.50 (kg) kolichestvo veshei: 5 2. Nomer reisa: 1 ves...

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

Странности в поведении strncpy - C++
Я написал программу на ноутбуке используя Code::Blocks и minigw как компилятор под 7кой и перенёс исходники на стацонарник где у меня тоже...

ошибка 4996 strncpy - C++
#include<iostream> #include<Windows.h> #include<fstream> #include<cstring> #include<cstdlib> #include <conio.h> #include...

Как работает strncpy()? - C++
#include<iostream> #include<cstring> using namespace std; char*input(char*word,int&size){ cin.getline(word,size); ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
25.05.2009, 07:33     Strncpy #2
мо-моему это итак сишная функция, тока модуль стринг в некоторых компилерах надо подрубить
Rififi
2359 / 1054 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
25.05.2009, 09:47     Strncpy #3
т.к. самому делать этот велосипед влом, вот от тех, кому не влом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*
 * Apache's "replacement" for the strncpy() function. We roll our
 * own to implement these specific changes:
 *   (1) strncpy() doesn't always null terminate and we want it to.
 *   (2) strncpy() null fills, which is bogus, esp. when copy 8byte
 *       strings into 8k blocks.
 *   (3) Instead of returning the pointer to the beginning of
 *       the destination string, we return a pointer to the
 *       terminating '\0' to allow us to "check" for truncation
 *
 * apr_cpystrn() follows the same call structure as strncpy().
 */
 
APR_DECLARE(char *) apr_cpystrn(char *dst, const char *src, apr_size_t dst_size)
{
 
    char *d, *end;
 
    if (dst_size == 0) {
        return (dst);
    }
 
    d = dst;
    end = dst + dst_size - 1;
 
    for (; d < end; ++d, ++src) {
    if (!(*d = *src)) {
        return (d);
    }
    }
 
    *d = '\0';  /* always null terminate */
 
    return (d);
}
DeeR
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
25.05.2009, 17:17  [ТС]     Strncpy #4
Можно, переделать этот код на С, а то некороые вещи не понятны.
Mecid
680 / 229 / 4
Регистрация: 15.10.2007
Сообщений: 1,247
25.05.2009, 17:20     Strncpy #5
что не ясно то?
Evg
Эксперт CАвтор FAQ
17547 / 5785 / 370
Регистрация: 30.03.2009
Сообщений: 15,937
Записей в блоге: 26
25.05.2009, 17:31     Strncpy #6
В велосипеде в 3-м пункте написано, что ихняя реализация делает не так, по сравнению с правильной. Для правильной вместо "return d" нужно "return dst"
DeeR
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
28.05.2009, 15:55  [ТС]     Strncpy #7
APR_DECLARE(char *) apr_cpystrn(char *dst, const char *src, apr_size_t dst_size)
как вот эту строку можно в С записать?
Evg
Эксперт CАвтор FAQ
17547 / 5785 / 370
Регистрация: 30.03.2009
Сообщений: 15,937
Записей в блоге: 26
28.05.2009, 16:03     Strncpy #8
"char * apr_cpystrn(char *dst, const char *src, apr_size_t dst_size)"
DeeR
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
01.06.2009, 19:05  [ТС]     Strncpy #9
Может кто-нибудь написать программу, которая тестирует эту функцию на С?
YurA_280784
Заблокирован
11.06.2009, 09:21     Strncpy #10
Вах, дарагой зачэм куда-то ходыт, вот прототып)))))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
char * __cdecl strncpy (
        char * dest,
        const char * source,
        size_t count
        )
{
        char *start = dest;
 
        while (count && (*dest++ = *source++))    /* copy string */
                count--;
 
        if (count)                              /* pad out with zeroes */
                while (--count)
                        *dest++ = '\0';
 
        return(start);
}
Evg
Эксперт CАвтор FAQ
17547 / 5785 / 370
Регистрация: 30.03.2009
Сообщений: 15,937
Записей в блоге: 26
11.06.2009, 10:13     Strncpy #11
Ему нужен не прототип и не реализация, а тест на эту функцию
YurA_280784
Заблокирован
11.06.2009, 13:34     Strncpy #12
Что значит тест?Как в программе юзать или что?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2009, 13:37     Strncpy
Еще ссылки по теме:

Д.Либерти С++ за 21 день. strncpy(...) Листинг 8.11 - C++
#include&lt;iostream&gt; #include&lt;ctype.h&gt; #include&lt;string.h&gt; using namespace std; bool GetWord(char *string, char *word, int&amp;...

Задание по копированию строк, strncpy - C++
помогите пожалуйста,никак не могу разобраться c функцией srncpy, нужно при условии int strncpy(char*s1,char*s2,int N) ,т.е копировать...

Ошибка предположительно в strncpy(word, p1, len) - C++
Есть простенький обучающий пример: #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;ctype.h&gt; #include &lt;string.h&gt; using...

Аналог strncpy и strncmp для типа string - C++
Подскажите, как проводить операции сравнения и копировании с двумя строками типа string, при чём только над определённым количеством...

Напишите варианты библиотечных функций strncpy, strncat и strncmp - C++
вот такая задача, Напишите варианты библиотечных функций strncpy, strncat и strncmp, которые оперируют с первыми символами своих...


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

Или воспользуйтесь поиском по форуму:
Evg
Эксперт CАвтор FAQ
17547 / 5785 / 370
Регистрация: 30.03.2009
Сообщений: 15,937
Записей в блоге: 26
11.06.2009, 13:37     Strncpy #13
Цитата Сообщение от YurA_280784 Посмотреть сообщение
Что значит тест?Как в программе юзать или что?
Пардон, я с другой темой перепутал
Yandex
Объявления
11.06.2009, 13:37     Strncpy
Ответ Создать тему
Опции темы

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