相关疑难解决方法(0)

为什么每次使用malloc时都会收到警告?

如果我malloc在我的代码中使用:

int *x = malloc(sizeof(int));
Run Code Online (Sandbox Code Playgroud)

我收到以下警告gcc:

new.c:7: warning: implicit declaration of function ‘malloc’  
new.c:7: warning: incompatible implicit declaration of built-in function ‘malloc’
Run Code Online (Sandbox Code Playgroud)

c malloc gcc warnings sizeof

108
推荐指数
4
解决办法
10万
查看次数

C中的数组初始化会导致访问冲突

有人可以让我摆脱我的痛苦并告诉我为什么在用数组初始化数组时会出现访问冲突?

#include <stdio.h>

void initData(float **data, size_t N)
{
    int i;
    *data = (float*)malloc( N * sizeof(float) );

    for (i=0; i<N; i++)
    {
        *data[i] = 1.0;
    }
}

void main()
{
    float *data;
    initData(&data,8);
}
Run Code Online (Sandbox Code Playgroud)

c

2
推荐指数
1
解决办法
113
查看次数

新动态记忆"第一次"

为什么错误

#include <stdio.h>

int main(void)
{
    int *p, size, i;
    FILE *fp;

    fp = fopen("input.txt","r");
    fscanf(fp, "%d", &size);

    p = (int*)malloc(size*sizeof(int));  //error
    for (i = 0; i <size; i++)
        fscanf(fp, "%d", &p[i]);

    for (i = size-1; i>= 0; i--)
        printf("%d\n", p[i]);

    free(p);
    fclose(fp);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我在ubuntu上使用"Geany"

并在Geany编译器上:

fileName.c:11:2:警告函数'malloc'的隐式声明[-Wimplicit-function-declatation] fileName.c:11:12:警告:内置函数'malloc'的不兼容隐式声明[默认启用] fileName.c:18:12:warning:函数'free'的隐式声明[-Wimplicit-function-declaration] fileName.c:18:12:警告:内置函数'free'的不兼容隐式声明[enabled-by默认]编译成功完成

c dynamic-memory-allocation

0
推荐指数
1
解决办法
249
查看次数

标签 统计

c ×3

dynamic-memory-allocation ×1

gcc ×1

malloc ×1

sizeof ×1

warnings ×1