c++开头为void的函数是什么意思,举个例子
时间: 2023-06-09 08:08:54 浏览: 264
好的,我可以回答您的问题。以C语言中void开头的函数表示函数没有返回值。下面是一个例子:
```
void helloWorld() {
printf("Hello, World!");
}
```
这个函数没有参数,也没有返回值。它只是在屏幕上输出“Hello, World!”这个字符串。
相关问题
用C++将两个字符串连接起来,不要用strcat函数。
可以使用指针来实现字符串拼接,下面是一个例子:
```c
#include <stdio.h>
void my_strcat(char *dest, const char *src) {
while (*dest) {
dest++;
}
while (*src) {
*dest = *src;
dest++;
src++;
}
*dest = '\0';
}
int main() {
char s1[100] = "Hello, ";
char s2[] = "world!";
my_strcat(s1, s2);
printf("%s\n", s1);
return 0;
}
```
这个程序定义了一个名为 `my_strcat` 的函数,该函数接受两个参数:目标字符串和源字符串,将源字符串拼接到目标字符串的末尾。该函数使用两个指针来遍历两个字符串。第一个指针 `dest` 指向目标字符串的末尾,第二个指针 `src` 指向源字符串的开头。然后,逐个将 `src` 指针指向的字符复制到 `dest` 指针指向的位置,并将两个指针都向前移动,直到 `src` 指针指向源字符串的结束符 `\0`。最后,在目标字符串的末尾添加一个结束符 `\0`。
C++ try catch finally的例子
当使用 C 语言时,你通常不会使用 try-catch-finally 结构,因为 C 不提供本地异常处理机制。而是使用 setjmp() 和 longjmp() 函数来模拟异常处理。下面是一个使用 setjmp() 和 longjmp() 函数模拟 try-catch-finally 结构的示例:
```c
#include <stdio.h>
#include <setjmp.h>
jmp_buf buf;
void finally() {
printf("finally\n");
}
void divide(int num1, int num2) {
int result;
if(num2 == 0)
longjmp(buf, 1);
result = num1 / num2;
printf("Result: %d\n", result);
}
int main() {
int num1, num2;
if(setjmp(buf) == 0) {
printf("Enter two numbers: ");
scanf("%d %d", &num1, &num2);
divide(num1, num2);
}
else {
printf("Error: Division by zero!\n");
}
finally();
return 0;
}
```
在这个示例中,我们使用了 setjmp() 函数来设置一个跳转点(在主函数的开头),然后在 divide() 函数中,如果出现除以零的错误,我们就通过调用 longjmp() 函数来跳转回跳转点,并带上一个值作为错误码。在跳转点处,我们检查错误码来确定出现了何种错误。在 try-catch-finally 结构中,“finally” 块是无论如何都会执行的代码块。在这个示例中,我们通过调用 finally() 函数来模拟这段代码。