#include <stdio.h>
#include <stdint.h>
#include <string.h>
// Function to copy data from a const char* to a uint8_t* buffer
void copy_data_to_buffer(const char *data, uint8_t *buff, size_t buff_size) {
// Calculate the length of the input data
size_t data_length
= strlen(data
);
// Ensure the buffer is large enough to hold the data
if (data_length >= buff_size) {
printf("Error: Buffer is too small to hold the data.\n"); return;
}
// Copy the data into the buffer
memcpy(buff
, data
, data_length
);
// Optionally, null-terminate the buffer (if needed)
// buff[data_length] = '\0';
}
int main() {
const char *data = "Hello, World!"; // Example input data
uint8_t buff[50]; // Buffer to hold the copied data
// Copy the data into the buffer
copy_data_to_buffer(data, buff, sizeof(buff));
// Print the copied data
printf("Copied data: %s\n", (char *)buff
);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgoKLy8gRnVuY3Rpb24gdG8gY29weSBkYXRhIGZyb20gYSBjb25zdCBjaGFyKiB0byBhIHVpbnQ4X3QqIGJ1ZmZlcgp2b2lkIGNvcHlfZGF0YV90b19idWZmZXIoY29uc3QgY2hhciAqZGF0YSwgdWludDhfdCAqYnVmZiwgc2l6ZV90IGJ1ZmZfc2l6ZSkgewogICAgLy8gQ2FsY3VsYXRlIHRoZSBsZW5ndGggb2YgdGhlIGlucHV0IGRhdGEKICAgIHNpemVfdCBkYXRhX2xlbmd0aCA9IHN0cmxlbihkYXRhKTsKCiAgICAvLyBFbnN1cmUgdGhlIGJ1ZmZlciBpcyBsYXJnZSBlbm91Z2ggdG8gaG9sZCB0aGUgZGF0YQogICAgaWYgKGRhdGFfbGVuZ3RoID49IGJ1ZmZfc2l6ZSkgewogICAgICAgIHByaW50ZigiRXJyb3I6IEJ1ZmZlciBpcyB0b28gc21hbGwgdG8gaG9sZCB0aGUgZGF0YS5cbiIpOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAvLyBDb3B5IHRoZSBkYXRhIGludG8gdGhlIGJ1ZmZlcgogICAgbWVtY3B5KGJ1ZmYsIGRhdGEsIGRhdGFfbGVuZ3RoKTsKCiAgICAvLyBPcHRpb25hbGx5LCBudWxsLXRlcm1pbmF0ZSB0aGUgYnVmZmVyIChpZiBuZWVkZWQpCiAgIC8vIGJ1ZmZbZGF0YV9sZW5ndGhdID0gJ1wwJzsKfQoKaW50IG1haW4oKSB7CiAgICBjb25zdCBjaGFyICpkYXRhID0gIkhlbGxvLCBXb3JsZCEiOyAgLy8gRXhhbXBsZSBpbnB1dCBkYXRhCiAgICB1aW50OF90IGJ1ZmZbNTBdOyAgLy8gQnVmZmVyIHRvIGhvbGQgdGhlIGNvcGllZCBkYXRhCgogICAgLy8gQ29weSB0aGUgZGF0YSBpbnRvIHRoZSBidWZmZXIKICAgIGNvcHlfZGF0YV90b19idWZmZXIoZGF0YSwgYnVmZiwgc2l6ZW9mKGJ1ZmYpKTsKCiAgICAvLyBQcmludCB0aGUgY29waWVkIGRhdGEKICAgIHByaW50ZigiQ29waWVkIGRhdGE6ICVzXG4iLCAoY2hhciAqKWJ1ZmYpOwoKICAgIHJldHVybiAwOwp9