小编sna*_*kec的帖子

Linux 下的 C 图形

大家好,谁能告诉我如何在 Linux 中用 C 语言制作图形程序。我应该在 gcc 中使用什么头文件。我对 Linux 还很新手,提前

c

5
推荐指数
1
解决办法
4645
查看次数

在C中使用动态内存

我是C语言的新手.我在分配动态数组时遇到问题.

我曾经在循环之外分配内存a=(int*)malloc(5* sizeof(int));,所以每件事情都运行良好.现在我想在循环中逐个为每个元素分配内存malloc(),但代码不起作用.

我尝试过不同的选择,scanf("%d",a) &a++,scanf("%d",&a[i]);但不能成功.如果有人能告诉我我做错了什么并彻底向我解释这个概念,我将感激不尽.

我遇到问题的代码如下:

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

int main()
{
  int *a;
  int i;
  system("clear");

  for(i=0;i<5; i++)
  {
    a=(int *)malloc(sizeof(int));
    printf("%u",&a);
    printf("please enter the element in array");
    scanf("%d",a[i]);
  }
  for(i=0;i<5; i++)
  {
    printf("\nthe %d entry in the array %d",i,a[i]);
  } 
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

c dynamic

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

c语言动态记忆

嗨,每个人的支持,但没有人提供我所需的信息现在我尝试做这样的程序

#include<stdio.h>
#include <stdlib.h>
int main()
{
    int **a,i,j;
    system("clear");

    a=(int*)malloc(sizeof(int)*5);

    for (i=0; i<5; i++)
    {
        a[i]= malloc(sizeof(int)*3);

        for (j=0; j<3; j++)
        {
            printf("\nplease enter the [%d][%d] location = ",i,j);
            scanf("%d",&a[i][j]);
        }
    }


    for (i=0; i<5; i++)
    {
        for (j=0; j<3; j++)
        {
            printf("\nthe value enter  enter the [%d][%d] location = ",i,j);
            printf("%d",a[i][j]);
        }
    }
    free(a);
    return ;
}
Run Code Online (Sandbox Code Playgroud)

我在编译时遵守它,它显示了warnig正在跟随

c:8: warning: assignment from incompatible pointer type
Run Code Online (Sandbox Code Playgroud)

在运行程序时它从用户那里取15个值,但它没有显示用户输入的值,任何人都可以解释我做错了什么,任何机构都能解释我双指针和动态内存分配的概念

c

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

标签 统计

c ×3

dynamic ×1