в нижеприведенной программе Мне нужно изменить строку без использования функции библиотеки. Но результат после копирования печатает некоторую стоимость мусора. Может ли кто-нибудь помочь мне разобраться с этим? проблема с копией строки в C
ответ
str1
и str2
должны быть char
массивов достаточно большими для хранения строк. Для вашего упрощенного примера следует сделать char str1[128], str2[128];
.
Вы должны инициализировать j
длину str1
перед циклом и нулевым прекратить str2
с str2[j--] = '\0';
перед циклом:
for (j = 0; str1[j] != '\0'; j++) {
continue;
}
str2[j--] = '\0';
for (i = 0; str1[i] != '\0'; i++, j--) {
str2[j] = str1[i];
}
, но для 'strlen' требуется библиотека string.h, OP хочет обойтись без ее использования. – Cherubim
@ ch3rub7: вы правы, я удалил'
завершение str2 с нулевым значением дает желаемый результат. если str2 не заканчивается нулевым значением, результат подобен «ayvid garbage value divya» (как на экране вывода в pic one). Мне нужно знать, как после значения мусора он снова печатает исходную строку в конце. Кто-нибудь может прояснить? – divya
str2 должен быть присвоен нулевым символом «\ 0» после разворота строки в течение петля.
for(j=strlen(str1);str1[i]!='\0';i++,j--)
str2[j-1]=str1[i];
str2[i]='\0';
- 1. проблема с копией экземпляра
- 2. проблема с мелкой копией!
- 3. Проблема с копией MSBuild
- 4. Конкатенация строки с копией()
- 5. проблема с копией в powershell
- 6. Проблема с копией с * .txt файлами
- 7. Проблема с копией в Windows 7 и моей программе C#
- 8. Изображение размытие в C++. Проблема с копией матрицы
- 9. Проблема с копией байта [] в другой байт []
- 10. Проблема с копией UIView в iOS 9
- 11. Проблема с глубокой копией в конструкторе копии
- 12. Проблема с резервной копией Excel VBA
- 13. Проблема с резервной копией пружинной формы
- 14. Весенняя безопасность, проблема с копией JSESSIONID
- 15. Проблема с копией базы данных Android?
- 16. Проблемы с указателем копией в C
- 17. Проблема с локальной копией веб-сайта
- 18. Проблема с Subversion с рабочей копией при одной ревизии
- 19. Проблема с созданием строки C
- 20. проблема с резервной копией с сервера linux с использованием ssh
- 21. Проблемы с копией структуры
- 22. Проблема с копией при импорте проекта Eclipse в Studio
- 23. Сохранение двоичных деревьев в векторе - проблема с копией constr?
- 24. smbclient файл с копией
- 25. C++ Массив объектов с копией конструктора
- 26. Проблема с созданием строки C в Xcode
- 27. Проблема с расширением строки в C#
- 28. C++ передача семантикой значения с копией/перемещением
- 29. печать строки проблема в C
- 30. Пакетный файл - проблема с удаленной копией и выполнением
Первое, что вам нужно сделать, это определить лимит символов и придерживаться его, иначе вы можете ожидать ошибку сегментации. Кроме того, он более полезен для отправки кода в виде текста на экране вместо изображения с половиной компьютерной программы. – Mike
1. '#include' в верхней части файла. 2. Исправьте ошибки компилятора. 3. Если возникли дополнительные вопросы, скопируйте/вставьте код в виде текста, а не изображений. –
dxiv
Возможный дубликат [Мусор печатается при использовании strcpy] (http://stackoverflow.com/questions/11161609/garbage-being-printed-when-using-strcpy) – Abhijeet