不达鸟来了 发表于 2018-9-7 07:52:27

在定义的函数中,加入printf语句报错

#include <stdio.h>

void main()
{
        void reserve(int arr[],int n);
        int arr={1,2,12,8,9,8,7,6,3,63};
        int n=10,i;
        printf("转换前:\n");
        for(i=0;i<10;i++)
        {
                printf("%d ",arr);
        }
        printf("\n");
        reserve(arr,10);
        printf("转换后\n");
        for(i=0;i<=9;i++)
        {
                printf("%d ",arr);
        }
        printf("\n");
}

void reserve(int arr[],int n)
{
        //printf("\n");在此函数中不能加入printf函数,否则会语法错误。为什么?
        int i,j,temp;
        for(i=0;i<(n/2);i++)
        {
                j=n-1-i;
                temp=arr;
                arr=arr;
                arr=temp;
        }
}

BngThea 发表于 2018-9-7 08:20:20

语法上不应该出错,你贴出你的出错提示看看

不达鸟来了 发表于 2018-9-7 12:49:14

在定义的 void reserve(int arr[],int n) 函数中
加入-->
         printf("\n");
加入printf语句就会报错。为什么?
去掉就可以成功运行。
编译器是vs2010

claws0n 发表于 2018-9-7 13:33:55

不达鸟来了 发表于 2018-9-7 12:49
在定义的 void reserve(int arr[],int n) 函数中
加入-->
         printf("\n");


确定不是中文的标点符号?

不达鸟来了 发表于 2018-9-7 16:29:21

英文的

不达鸟来了 发表于 2018-9-7 16:30:09

是不是编译器的 问题

初代幻冰 发表于 2018-9-7 17:07:28

你有没有重新编译啊?

几番离愁 发表于 2018-9-7 17:51:32

把printf放定义后面试试咯
页: [1]
查看完整版本: 在定义的函数中,加入printf语句报错