设计一个C程序,输出一行文字“Hello,world".

设计一个C程序,输出一行文字“Hello,world".,第1张

#include <stdio.h>

int main ()

{

printf ("Hello World!\n")

return 0

}

扩展资料:

return语句不能直接返回迹族多个值。如果想通过函数内部返回多个值的话,可是使用以下代码:

#include <stdio.h>姿让弊

//定义一个s

typedef struct _a

{

int a

int b

}A,*PA

//函数返回结构体变量,它里面就可以包滑野含多个值

PA func()

{

PA a = (A*)malloc(sizeof(A))

a->a = 2

a->b = 3

return a

}

int main()

{

PA test = func()

printf("%d %d\n", test->a, test->b)

delete test

return 0

}

1 最经典的“Hello world!”,直接用 printf 输出 “Hello world!”

#include <stdio.h>

#include <iostream>

int main(){

printf("Hello world! ")// 教科书的写法

puts("Hello world!")// 我最喜欢的

puts("Hello" " " "world!")// 拼接字符串

std::cout <<"Hello world!" <<std::endl// C++风格的教科书写法

return 0}

2、用宏写的“Hello world!”

“#”可以“提取”参数的名 字,把它变成字符串。

#include <stdio.h>

#define Say(sth) puts (#sth)

int main(){

return Say(Hello world!)

}

3. 断章取义的“Hello world!”

#include <stdio.h>

int main(){

return puts ("Do not say: Hello world! "[12])

}

4. 退出时运行的“Hello world!”

atexit()注册回调函数。这个函数可以调用多次,最后注册的函数最念含先执行。

#include <stdio.h>

#include <stdlib.h>

void say(){printf("world! ")}

void sth(){printf("Hello ")}

int main(){

return atexit(say), atexit (sth)

}

5. 读取自己的“Hello world!”

// Hello world!

#include <iostream>

#include <fstream>

#include <string>

int main(){

std::ifstream ifs(__FILE__)

std::string say, some, word

ifs >>say >>some >>word

std::cout <<some <<" " <<word

return 0

}

6. 话分两头的“Hello world!”

声明一个全局的类的实例,在 main 函数执行之前会调用这个类的构造函数,仔正笑结束之后则会调用清银析构函数。

#include <iostream>

class say{

public:say(){std::cout <<"Hell"}

~say(){std::cout <<"world!"}

}hello

int main(){

std::cout <<"o "

return 0

}

7. 传入模板的“Hello world!”

#include <iostream>

template <char * words>

class say{

public:

void operator () (){std::cout <<words}

}

char hello[] = "Hello world!"

int main(){

return say<hello>()(), 0

}

8. 调用私有函数的“Hello world!”

#include <iostream>

#include <cstddef>

class secret{

private:

virtual void say(){std::cout <<"Hello world!"}

}

int main(){

secret word

(reinterpret_cast<void (*)()>(**(intptr_t**)(&word)))()

return 0

}

9. 直接修改函数的返回地址

#include <stdio.h>

#include <stdlib.h>

#include <stddef.h>

void say(){

puts("Hello world!")

exit(0)

}

int main()

{

volatile intptr_t a = 0

volatile intptr_t * p = &a

*(p + 2) = (intptr_t)say

*(p + 3) = (intptr_t)say

return 0

}

10. 外星人说的“Hello world!”

#include <stdio.h>

void alien_say (char * p){

while (putchar (*(p += *(p + 1) - *p)))

}

int main(){

return alien_say ("BETHO! Altec oh liryom(a loadjudas!) dowd."), 0

}

下面的内容是Helloworld的详细说明。

// #include是预处理指令,用于包含头文件

// 头文件中包含着系统或者其他库已经写好的接口。

#include "stdio.h"  // 标准输入输出库的头销袭纤文件

#include "禅嫌conio.h"  // 控制台输入输入库的头文件

main() // main是固定名称,用于标记程序的执行入口

{

   亏仿 printf("Hello, world\n") // printf是系统输出函数,用于向控制台打印文字。

    getch() // 用于获得用户输入。在此处是为了让程序暂停,便于观察执行结果。对于Helloworld的输出没有影响。

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8237857.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存