#include <iostream> #include <cstdint> #include <memory> using namespace std; void consumeBuffer(unique_ptr<uint8_t[]>buffer, int size) { for (int i = 0; i < size; i++) { cout << static_cast<int>(buffer[i]); if (i != size-1) cout << " "; } cout << endl; } int main() { int N; cin >> N; unique_ptr<uint8_t[]> buffer(new uint8_t[N]); for (int i = 0; i < N; i++) { int temp; cin >> temp; buffer[i] = (uint8_t)temp; } consumeBuffer(move(buffer), N); //using move to transfer ownership to function if (buffer == nullptr) cout << "No data" << endl; else cout << "Has data" << endl; return 0; }
Test Cases
Test Results
Input
4 10 20 30 40
Expected Output
10 20 30 40 No data