[OT] C programming problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It is for raid, honest :-)

My C is so rusty it's jammed solid :-) but I'm trying to prototype a simple algorithm for "de-clustering" a raid-60/61 array.

Googling for my error -

main.c:20:5: warning: incompatible implicit declaration of built-in function ‘memset’ [enabled by default]
     memset( &array, 0, blocks * sizeof(int) );

says "you need to include stdlib.h" - but I have!

(I'm getting the same error on the malloc ...)

#include <stdio.h>
#include <stdlib.h>

void main()
{
    int disks, logdisks, mirrors, prime;

    printf( "%s", "Enter the number of disks ");
    scanf( "%d", &disks);
    printf( "%s", "Enter the number of logical disks ");
    scanf( "%d", &logdisks);
    printf( "%s", "Enter the number of mirrors ");
    scanf( "%d", &mirrors);
    printf( "%s", "Enter the prime ");
    scanf( "%d", &prime);

    int blocks, *array;

    blocks = logdisks * mirrors * disks;
    array = (int *) malloc( sizeof(int) * blocks );
    memset( &array, 0, blocks * sizeof(int) );

    int i;

    for (i=0; i < blocks; i++) {
        array[i] = (i * prime) % blocks;
    }

    for (i=0; i < blocks; i++) {
        if ( (i % disks) == 0)
            printf( "\n");
        printf( "%4d", array[i]);
    }
}
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux