c语言函数的镶嵌注意点,第05天C语言(04):函数的注意点

#pragma mark 函数的注意点 ###pragma mark 概念

/**

1.// 如果"基本数据类型(char int double float)"作为函数的参数,在函数中修改形参的值,不会影响到外面实参的值

2.// 在C语言\有特殊的函数,它是一个转义字符

*/

#pragma mark 代码

#include

// 1.如果"基本数据类型(char int double float)"作为函数的参数,在函数中修改形参的值,不会影响到外面实参的值

// 2.实参的个数,必须和形参的个数相同

#pragma mark 两个数的最小值

/*

int getMin (int v1, int v2)

{

// 注意 : 在函数中修改形参的值, 不会影响到外面实参的值(当然也有一定的前提)

v1 = 50;

int min = v1 < v2 ? v1 : v2;

return min;

}

*/

#pragma mark 身高

// 3. 返回值可以和返回值类型不一样,但是如果返回值和返回值类型不一样的时候,系统会对返回值进行自定类型转换(隐式类型转换)

// 注意:在企业级开发中千万不要这样写

// 4.函数可以有形参也可以没有形参

int getHeight()

{

return 1.75;

}

// 5.函数可以有返回值,也可以没有返回值

// 如果函数没有返回值,那么返回值类型就写void

// 如果函数没有返回值,那么可以不写return,但是如果写了return也不会报错

void printPose()

{

// printf("{🌹}");

printf("{@}\n");

printf(" |\n");

printf("\\|/\n"); // 在C语言\有特殊的函数,它是一个转义字符

printf(" |\n");

return ;

}

###pragma mark 代码

/**

return的应用场景

1.用于函数中返回结果给函数调用者

2.结束函数

3.提前结束函数

*/

/*

认证:

QQ

MM

YY

*/

//4. return后面不可以写任何语句,因为执行不到

```objc

/*

login(账号,密码)

{

// 1.用户只输入了账号

// 2.用户只输入了密码

// 如果用户只输入了行号或者密码,就没有必要发送请求

if (账号 == NULL) {

return ;

}

if (密码 == NULL) {

return ;

}

// 发送网络请求到服务器,将用户的账号和密码上传

// get 请求: http://www.momo.com/?username="lyh"&passwork="123";

}

*/

// 7. 函数名称不能相同

// 7. 1形参列表不同也不可以

// 7.2 返回值类型不同也不可以

void text()

{

}

//void text()

//{

//}

//void text(int a)

//{

//}

//int test()

//{

//

//}

//

// 8.函数不能嵌套定义

//void text()

//{

// void demo()

// {

//

// }

//}

// 9.C语言是弱语言

// 9.1函数可以没有返回值类型

// 如果函数没有写返回值,那么默认就是int类型

text55()

{

return 1;

}

int main()

{

/*

// 需求:获取两个数的最小值

int a = 10;

int b = 20;

int c = 5;

int result = getMin(a, b);

printf("result = %i\n",result);

printf("a = %i , b = %i\n",a, b);

*/

/*

double height = getHeight();

printf("height = %f\n",height);

*/

// 需求:打印一朵玫瑰花

// printPose();

int result = text55();

{

text55();

printf("result = %i\n",result);

}

return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言编程注意事项 1. 每个程序中一定包含main()函数, 尽管C语言中对函数命名没有限制。 2. printf函数永远不会自动换行, 只能用\n来实现, 回车键进行的换行在编译中会出现错误信息。 3. 在vs2008等平台中编译、测试要加 system("pause"); 来暂停dos自动退出引起的printf无法显示。 4. 所有自定义变量必须声明才能使用。 5. 每行一般只写一条语句, 在运算符两边加一个空格, 便于阅读。 6. 整数除法将会自动舍位, 不进行四舍五入的操作。 7. for(初始化部分;条件部分;增长部分) 比while 更适用于初始化和增长步长都是单条语句的情况。 8. 使用 #define 名字替换文本对部分"幻数" 赋予意义便于阅读 #define结尾无需;号来结束。 9. EOF(end of file)表示没有字符输入时定义在stdio.h 头文件中 EOF不等于\n 换行等。 10. 由于!= 的优先级大于 = ,因此如果对判断中存在变量赋值时 应对赋值加() 例如: while((c = getchar()) != EOF)。 11. getchar() 用于用户输入直至键入回车键。 12. 变量名以字母和数字组成, (下划线"_"被默认为字符, 以下划线为首写字母的为库类变量名), 变量常以小写字母开头,内部变量名前31位有效, 外部变量名至少前6位保持唯一性。 13.在C语言中是区分字母大小写的。 14. 一个字符常量为一个整数, 用''单引号括起来。例如: '0' 为48, 它与0没有任何关系。 15. ANSI C语言的转义符: \a 响铃符; \b 回退符; \f 换页符; \n 换行符; \r 回车符; \t 横向制表符 ; \v 纵向制表符; \\ 反斜杠; \? 问号; \' 单引号; \" 双引号; \ooo 八进制数; \xhh 十六进制数; '\0' 表示0, 即(null)。 16. 'x'与"x"的区别: 'x'表示一个整数, 字母x在其字符集中对应的数值, "x"表示包含一个字符x 以及一个结束符'\0'。 17. const在声明变量中起限制作用, 该限定变量的值不能被修改。 18. %运算符不能应用于float或double类型。 19. char类型转换为int型时, 因为无法判断它是signed还是unsigned,这样其结果有可能为负数, 所以转换时尽量指定signed和unsigned限制符。 20. ++i与i++ 的不同之处: ++i是先 +1再使用i, i++ 是先使用i再 +1。 21. 三元运算符"?:" 第一个表达式的括号不是必须的, 但是由于三元表达式的优先级非常低, 因此我们还是将第一个表达式用()括起来以便于阅读和理解。 22. C语言中可以使用递归 (即函数调用自身函数), 这样做并不节省储存空间也不加快执行速度, 只是使程序紧凑便于理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值