c语言每日学习8.24

void reverse_string(char* str) 为什么不用传递数组的长度?

在C语言中,字符串通常是以空字符'\0'结尾的字符数组。因此,当你传递一个字符串(即字符数组的指针)给函数时,函数可以通过遍历字符串直到遇到空字符来确定字符串的长度。这就是为什么reverse_string函数不需要显式传递数组长度的原因。

reverse_string函数内部,使用strlen函数可以计算字符串的长度,这是因为strlen函数会遍历字符串直到遇到空字符,并返回遍历过的字符数量(不包括空字符)。

所以,即使不传递数组的长度,reverse_string函数也能通过遍历字符串来确定其长度,并进行反转操作。

cpp 复制代码
#include<stdio.h>
int DigitSum(int n);
int main()
{

	int num = 0;
	scanf("%d", &num);

	printf("%d\n", DigitSum(num));

	return 0;
}
int DigitSum(int n)
{
	int a = n % 10;
	int temp = n / 10;
	
	if (n != 0)
	{
		return a + DigitSum(temp);
	}
	
}
cpp 复制代码
#include<stdio.h>
int power(int n, int k);
int main()
{
	int n = 0;
	int k = 0;
	scanf("%d %d", &n, &k);

	printf("%d\n", power(n, k));

	return 0;
}
int power(int n, int k)
{
	
	if (k != 0)
	{
		return n * power(n, k-1);
	}
}
相关推荐
Funny_AI_LAB1 小时前
李飞飞联合杨立昆发表最新论文:超感知AI模型从视频中“看懂”并“预见”三维世界
人工智能·算法·语言模型·音视频
RTC老炮4 小时前
webrtc降噪-PriorSignalModelEstimator类源码分析与算法原理
算法·webrtc
草莓火锅6 小时前
用c++使输入的数字各个位上数字反转得到一个新数
开发语言·c++·算法
散峰而望6 小时前
C/C++输入输出初级(一) (算法竞赛)
c语言·开发语言·c++·算法·github
摇滚侠6 小时前
StreamAPI,取出list中的name属性,返回一个新list
数据结构·list
Kuo-Teng7 小时前
LeetCode 160: Intersection of Two Linked Lists
java·算法·leetcode·职场和发展
fie88897 小时前
基于MATLAB的狼群算法实现
开发语言·算法·matlab
偷偷的卷7 小时前
【算法笔记 11】贪心策略六
笔记·算法
ZPC82108 小时前
FPGA 部署ONNX
人工智能·python·算法·机器人
_w_z_j_8 小时前
爱丽丝的人偶
算法