C语言从零开始——day2(函数第一天)

第三节

####   main函数   ####

创建main.c文件

#include <stdio.h>
void func();    //函数的声明

int main(int argc, char **argv)    //main函数标准类型,argc表示main函数参数的个数;argv表示main函数参数的意义

{
                func();    //函数的调用
                printf("hello westos.\n");

                return 0;
}

void func(void)    //函数的定义

{

               exit(1);

}

函数三要素:函数的定义;函数的声明;函数的调用

函数里面:返回值;函数名;形参类型



####   main函数传参   ####

创建main_test.c文件

在Linux环境下,main函数的传参是在shell终端进行的。shell命令行每一个参数都是一个字符串

int main(int argc, char **argv)
{

                int i = 0;

                printf("argc = %d.\n", argc);
                if (argc != 2) //如果传入参数不为2个
                {
                                printf("参数错误!");
                                return 1;
                }

                //strcmp字符串比较函数;a 和 b  ==> a("1234") == b("1234") if成>立
                for (i=0; i<argc; i++)  //打印每个参数
                {
                                printf("argv[%d] = %s.\n", i, argv[i]);
                }
                
                if (0 == strcmp(argv[1], "1"))    //比较第二个字符串与"1"字符串大小,相等则执行该输出
                {
                                printf("hello.\n");
                }
                
                if (0 == strcmp(argv[1], "2"))    //比较第二个字符串与"2"字符串大小,相等则执行该输出
                {
                                printf("world.\n");
                }
                return 0;
}


####   函数调用,形参,实参   ####

创建function.c文件,文件内创建了main函数,func函数,func2函数,为了体验函数调用过程

#include <stdio.h>
void func(int a, int b);//函数声明;严格的说main函数应该在最前面,子函数应该在最开始进行函数声明  
void func2()  //函数定义;严格说,该函数定义应该在main函数定义之后
{
                func(1, 2);
}

int main(void)
{
                // 声明
                int i;
                //声明兼且定义
                int x = 33;
                int y = 44;

                printf("x = %d y = %d.\n", x, y);//输出当前x,y的值
                //函数调用,x、y就叫做函数实参
                //目的:交换x、y的值
                func(x, y);  //调用func函数,并传入实参,x,y
                printf("--------------after------------\n");  //标记用
                printf("x = %d y = %d.\n", x, y);
                func2();  //调用func2函数

return 0;
}

void func(int a, int b)    //func函数定义
{
                int temp = 0;
                //数据交换
                temp = a;
                a = b;
                b = temp;
                printf("in func:a = %d b = %d.\n", a, b);
}

注意:

/*
                在终端:man 1:查到都是linux命令;man 2:查到的都是系统API(接口、
函数);man 3:这个C标准库封装的函数
                所有的程序运行起来,都在内存(虚拟内存)中运行。内存:实际工作的内
存是虚拟内存。保证各个进程之间是安全的。
*/


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值