Tôi là một sinh viên lập trình hoàn toàn mới, vì vậy hãy tha thứ cho sự thiếu hiểu biết của tôi. Trạng thái chuyển nhượng của tôi:Làm cách nào để đặt lại con trỏ của tôi thành vị trí mảng cụ thể?
Viết chương trình khai báo một mảng gồm 10 số nguyên. Viết một vòng lặp chấp nhận 10 giá trị từ bàn phím và viết một vòng lặp khác hiển thị 10 giá trị. Không sử dụng bất kỳ subscripts trong vòng hai; chỉ sử dụng con trỏ.
Đây là mã của tôi:
#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
const int NUM = 10;
int values[NUM];
int *p = &values[0];
int x;
for(x = 0; x < NUM; ++x, ++p)
{
cout << "Enter a value: ";
cin >> *p;
}
for(x = 0; x < NUM; ++x, ++p)
{
cout << *p << " ";
}
return 0;
}
Tôi nghĩ rằng tôi biết nơi mà vấn đề của tôi là. Sau vòng lặp đầu tiên của tôi, con trỏ của tôi có giá trị [10], nhưng tôi cần đưa nó về giá trị [0] để hiển thị chúng. Làm thế nào tôi có thể làm điều đó?
này nghe có vẻ giống như C++ so với C :-) – nc3b
@ nc3b: Tôi đã phát hiện ra rằng nhiều trường đại học nói rằng họ dạy C++ nhưng thực sự cho thấy C với 'cin' và' cout'. – zneak
Điều đó cũng xảy ra ở trường trung học của tôi :-( – nc3b