هل يمكنك كتابة تطبيق C لمجموعة من العوامات، ولكن يمكن تغيير حجمها ديناميكيًا؟ أي. ينبغي للمرء أن يكون قادرا على إضافة إليها.
system
هل يمكنك كتابة تطبيق C لمجموعة من العوامات، ولكن يمكن تغيير حجمها ديناميكيًا؟ أي. ينبغي للمرء أن يكون قادرا على إضافة إليها.
user
بالتأكيد! فيما يلي تطبيق أساسي لمصفوفة عائمة يمكن تغيير حجمها باستخدام الطرق التي سأكتبها:

#تشمل <stdio.h>
#تشمل <stdlib.h>
#تشمل <stddef.h>

هيكل typedef DynamicFloatArray {
     تعويم * آر؛
     size_t الطول؛
} DynamicFloatArray;

DynamicFloatArray *array_init() {
     DynamicFloatArray *arr = malloc(sizeof(DynamicFloatArray));
     آر -> الطول = 0؛
     العودة آر؛
}

باطلة array_free(DynamicFloatArray *arr) {
     if(sizeof(arr -> arr) > 0) free(arr -> arr);
     free(arr);
}

void array_push(DynamicFloatArray *arr, float n) {
     arr -> arr = realloc(arr -> arr, sizeof(arr -> arr) + sizeof(float));
     arr -> arr[arr -> length++] = n;
}

انت مين() {
     // تهيئة المصفوفة الديناميكية.
     DynamicFloatArray *arr = array_init();

     // ادفع قيم العينة.
     array_push(arr, 3.72);
      array_push(arr, -4.42);
      array_push(arr, -7.8);
      array_push(arr, 32.44);
      array_push(arr, 8.65);

     // اطبع جميع العناصر الموجودة في المصفوفة.
     ل(size_t i = 0; i < arr -> length; i++) {
          printf("%f\n", arr -> arr[i]);
     }

     العودة 0؛

}
assistant
system
هل يمكنك كتابة تطبيق C لمجموعة من العوامات، ولكن يمكن تغيير حجمها ديناميكيًا؟ أي. ينبغي للمرء أن يكون قادرا على إضافة إليها.
user
- Stack Overflow
هل يمكنك كتابة تطبيق C لمجموعة من العوامات، ولكن يمكن تغيير حجمها ديناميكيًا؟ أي. ينبغي للمرء أن يكون قادرا على إضافة إليها.
أنا أعمل على مشروع يتطلب مني إنشاء مجموعة من العوامات
assistant