conquerorbh Ответов: 2

Как мне... с++ с++


я изучаю c++, но немного трудно понять эту программу.
мне нужен простой способ для этого палиндрома.
я ничего не знаю о pointer и strdup.

Что я уже пробовал:

#include<stdio.h>
#include<string.h>
int main()
{

	
	char string [80];										
											
	printf("Enter a string: ");
	gets(string);											
	strrev(string);											
	printf("reverse: %s", string);							
	
	
	
	int string_compare=strcmp(string,rev); 					
	if(string_compare==0)								
		{
	 printf("\n\t\tReversed line is the same as the original one\n\n\n\n\n\n ");
	}
	
return 0;
}

conquerorbh

сори я не пишу код, использованием strdup : типа char *об = использованием strdup(строка);
strrev (rev);
но я не знаю этого кода. я пытаюсь писать по-другому и simpe. (simpe: no point no strdup ) спасибо за помощь

2 Ответов

Рейтинг:
2

Patrice T

int string_compare=strcmp(string,rev);

Какую магию вы использовали, чтобы получить rev - здесь ?
Цитата:
я ничего не знаю о pointer и strdup.

Тогда вы знаете, что вам нужно изучать дальше.

Вот ссылки на справочники книг по С и с++ авторов этих языков. Обратите внимание, что C является предком C++, поэтому знание C всегда полезно с C++.
Язык программирования Си - Википедия, свободная энциклопедия[^]
https://hassanolity.files.wordpress.com/2013/11/the_c_programming_language_2.pdf[^]
http://www.ime.usp.br/~ПФ/Керниган-Ритчи/с-Программирование-электронные книги.формат PDF[^]

Язык Программирования C++ [^]
-----
Когда вы не понимаете, что делает ваш код или почему он делает то, что делает, ответ таков: отладчик.
Используйте отладчик, чтобы увидеть, что делает ваш код. Просто установите точку останова и посмотрите, как работает ваш код, отладчик позволяет вам выполнять строки 1 на 1 и проверять переменные по мере их выполнения, это невероятный инструмент обучения.

Отладчик-Википедия, свободная энциклопедия[^]
Освоение отладки в Visual Studio 2010 - руководство для начинающих[^]
Базовая отладка с помощью Visual Studio 2010-YouTube[^]

Отладчик здесь для того, чтобы показать вам, что делает ваш код, и ваша задача-сравнить его с тем, что он должен делать.
В отладчике нет никакой магии, он не находит ошибок, он просто помогает вам. Когда код не делает того, что ожидается, вы близки к ошибке.


Рейтинг:
1

Jochen Arndt

strdup это создание копии строки с использованием выделенной памяти.

Вы также можете использовать другую переменную и скопировать строку с помощью strcpy:

char string1[80];
char string2[80];
printf("Enter a string: ");
gets(string1);
strcpy(string2, string1);


conquerorbh

я задам вопрос. я пишу например "Эрдал" и обратного "ladre", как я использую "ladre" с кодом. этот пример успокаивает для меня сори. еще раз спасибо за помощь..

Jochen Arndt

Что вы подразумеваете под "Как я использую "ладре" с кодом"?

Обычно вы используете переменную (это содержимое).

conquerorbh

я пишу = erdal и наоборот
затем программа покажет мне ( ladre ) я хочу использовать этот ladre и Эрдал затем strcmp(строка,....) ....= то, что я пишу. сори за мой английский. я не могу точно определить.