#include <stdio.h>
#include <string.h>
typedef char String[80];
int main() {
String originalStr = "mail";
String reversedStr;
int index;
int len = strlen(originalStr);
for (index = 0; index < len; index++) {
reversedStr[index] = originalStr[len - index -1];
}
reversedStr[index] = ' ';
printf("Original is %s, reversed is %sn", originalStr, reversedStr);
}
我想知道如何修改main
函数以将void
函数与原型一起使用:void reverseString(String originalStr, String reversedStr);
事实上,我无法理解void
和main
之间的区别。
在深入了解 C 语言之前,您必须学会正确缩进代码。 它将使您的代码可读并防止许多愚蠢的错误。
我重新格式化了您发布的代码,看看它是如何完成的。
关于您的问题,您应该将用于反转字符串的代码移动到一个单独的函数中,您将获得原型:
#include <stdio.h>
#include <string.h>
typedef char String[80];
void reverseString(String originalStr, String reversedStr) {
int index;
int len = strlen(originalStr);
for (index = 0; index < len; index++) {
reversedStr[index] = originalStr[len - index - 1];
}
reversedStr[index] = ' ';
}
int main(void) {
String originalStr = "mail";
String reversedStr;
reverseString(originalStr, reversedStr);
printf("Original is %s, reversed is %sn", originalStr, reversedStr);
}
函数是编程语言中的基本块,用于将功能分解为较小的可重用步骤。 请注意,函数中的originalStr
和reverseStr
是函数参数的名称。它们是函数的本地。 从main
传递的值恰好通过构造具有相同的名称,但这不是必需的。 从一本好的教程书中了解更多信息。