我尝试从键盘上读取带有功能的数字,但是它不起作用。这是代码
#include <stdio.h>
#include <stdlib.h>
void write(int *n);
int main()
{
int *n,*m,p;
write(&n);
write(&m);
p = *n + *m;
printf("p = %d",p);
}
void write(int *n)
{
scanf("%d",&n);
}
将所有注释应用于发布的代码并遵循公理:
每行仅一个语句,每个语句(最多)一个变量声明。
并检查返回的值scanf()
以确保操作成功
结果是:
#include <stdio.h> // scanf(), printf(), fprintf()
#include <stdlib.h> // exit(), EXIT_FAILURE
void getInteger(int *n);
int main( void )
{
int n;
int m;
int p;
getInteger(&n);
getInteger(&m);
p = n + m;
printf("p = %d",p);
}
void getInteger(int *n)
{
if( 1 != scanf("%d",n) )
{
fprintf( stderr, "scanf failed" );
exit( EXIT_FAILURE );
}
}
当使用输入“ 1 3”运行时,输出为
p = 4
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句