Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32

Strncpy

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

Студворк — интернет-сервис помощи студентам
Напишите пожауйста на С аналог функции Strncpy
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.05.2009, 06:04
Ответы с готовыми решениями:

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

Не работает strncpy в MV
Не работает strncpy в Micrisoft Visual Задача следущая: Нужно Преобразовать суму к прописному текстовому виду, например 2141 — Две...

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

12
 Аватар для EnzoMatrix
121 / 121 / 14
Регистрация: 14.03.2009
Сообщений: 462
25.05.2009, 07:33
мо-моему это итак сишная функция, тока модуль стринг в некоторых компилерах надо подрубить
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
25.05.2009, 09:47
т.к. самому делать этот велосипед влом, вот от тех, кому не влом:
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);
}
0
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
25.05.2009, 17:17  [ТС]
Можно, переделать этот код на С, а то некороые вещи не понятны.
0
 Аватар для Mecid
684 / 233 / 16
Регистрация: 15.10.2007
Сообщений: 1,246
25.05.2009, 17:20
что не ясно то?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
25.05.2009, 17:31
В велосипеде в 3-м пункте написано, что ихняя реализация делает не так, по сравнению с правильной. Для правильной вместо "return d" нужно "return dst"
0
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
28.05.2009, 15:55  [ТС]
APR_DECLARE(char *) apr_cpystrn(char *dst, const char *src, apr_size_t dst_size)
как вот эту строку можно в С записать?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
28.05.2009, 16:03
"char * apr_cpystrn(char *dst, const char *src, apr_size_t dst_size)"
0
3 / 3 / 0
Регистрация: 11.04.2009
Сообщений: 32
01.06.2009, 19:05  [ТС]
Может кто-нибудь написать программу, которая тестирует эту функцию на С?
0
Заблокирован
11.06.2009, 09:21
Вах, дарагой зачэм куда-то ходыт, вот прототып)))))
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);
}
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
11.06.2009, 10:13
Ему нужен не прототип и не реализация, а тест на эту функцию
0
Заблокирован
11.06.2009, 13:34
Что значит тест?Как в программе юзать или что?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
11.06.2009, 13:37
Цитата Сообщение от YurA_280784 Посмотреть сообщение
Что значит тест?Как в программе юзать или что?
Пардон, я с другой темой перепутал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.06.2009, 13:37
Помогаю со студенческими работами здесь

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

Создать аналог strncpy
Добрый день. Столкнулся с проблемой: при компиляции нижеприведенного кода выдает ошибку &quot;Run-Time Check Failure #2 - Stack around...

ошибка 4996 strncpy
#include&lt;iostream&gt; #include&lt;Windows.h&gt; #include&lt;fstream&gt; #include&lt;cstring&gt; #include&lt;cstdlib&gt; #include &lt;conio.h&gt; #include...

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

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


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru