C 在单独的函数文件中使用指针
指针的工作C 在单独的函数文件中使用指针,c,function,pointers,gcc,C,Function,Pointers,Gcc,指针的工作 // swap.h swap(int, int); // swap.c swap(int *i, int *j) { int k; k=*i; *i=*j; *j=k; } // Practice.c #include <stdio.h> #include "swap.h" main() { int i,j; printf("\nEnter I = "); scanf("%d",&i); printf("\nEn
// swap.h
swap(int, int);
// swap.c
swap(int *i, int *j)
{
int k;
k=*i;
*i=*j;
*j=k;
}
// Practice.c
#include <stdio.h>
#include "swap.h"
main()
{
int i,j;
printf("\nEnter I = ");
scanf("%d",&i);
printf("\nEnter J = ");
scanf("%d",&j);
swap(&i, &j);
printf("\n I = %d",i);
printf("\n J = %d",j);
}
当我试图执行第二条语句时,它没有编译并产生错误
我使用了完全相同的过程来执行另一个程序,它有3个文件
请告诉我哪里出错。在
swap.h
change中
swap(int, int);
到
您的
swap
函数使用整数指针作为参数,但您的声明要求使用整数。所以编译器会给你们错误。在swap.h
change中
swap(int, int);
到
您的
swap
函数使用整数指针作为参数,但您的声明要求使用整数。所以编译器会给你错误。这个问题的格式很糟糕,并且缺少信息(错误)。请重写并重新格式化它。它产生了什么错误?您的swap()
原型错误;您声称需要int
,但实际上需要int*
(对于这两个参数)。如果系统的int
与指针的大小不同,这将是一个问题。请始终要求编译器警告您(-Wall-Wextra-pedantic
),并始终尊重编译器给您的警告。@MarcoA。已完成重新格式化。此问题的格式糟糕且缺少信息(错误)。请重写并重新格式化它。它产生了什么错误?您的swap()
原型错误;您声称需要int
,但实际上需要int*
(对于这两个参数)。如果系统的int
与指针的大小不同,这将是一个问题。请始终要求编译器警告您(-Wall-Wextra-pedantic
),并始终尊重编译器给您的警告。@MarcoA。重新格式化完成。
swap(int *, int *);