Member 13906640 Ответов: 1

У меня есть проблема eror struct pointer C++


у меня проблема с указателем..

поэтому, когда я ввожу:
2 3,
2 5,
2 7,
2 9,
2 11,
1 1
Выход :
Нилай ; 3,
следующий = 4;

почему testt.next-это 4 ??
я хочу testt.next = 5;

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

<pre>#include <iostream>
 
using namespace std;
 
struct test
{
  int next;
  int previous;
  int nilai = 0;
};

int main()
{
	test *coba, testt;
	coba = &testt;
	int z;
	string perintah;
	int y = 0;
	while(true)
	{
		cout << "Input : ";
		cin >> perintah;
		if(perintah == "2")
		{
			if(testt.nilai != 0){
				*(++coba);
			}
			cin >> (*coba).nilai;
			y++;
		}
		if(perintah == "1")
		{
			cin >> z;
			for(int i = 0; i < y-z; i++)
			{
				*(--coba);
			}
			cout << "Nilai ; " << (*coba).nilai << endl;
			cout << "next / previous ? : ";
			cin >> perintah;
			if(perintah == "next")
			{
				*(++coba);
				testt.next = (*coba).nilai;
				cout << testt.next;
				for(int i = 1; i < y-z; i++)
				{
					*(++coba);
				}
			}
		}
	}
  return 0;
}

1 Ответов

Рейтинг:
0

OriginalGriff

Видеть здесь: Как удалить адрес указателя в C++[^]