&mypass.name
создает указатель на ваш массив имен, вы хотите указатель на первый элемент вашего массива, вы можете использовать просто mypass.name
или &mypass.name[0]
. memcpy
здесь не требуется, так как вы можете просто назначить элементы:
mypass.name[0] = myval;
mypass.name[1] = myval_2;
Ваш второй набор memcpy
s потерпит неудачу, так как ваши myvalnew
указатели равны нулю, я не уверен, что вы ' пытаемся достичь здесь. Если вы пытаетесь вернуть значения, вы можете снова использовать обычный доступ к массиву:
uint8_t myvalnew = mypass.name[0];
uint8_t myvalnew_2 = mypass.name[1];