据说是月薪2W的笔试题

简介:

话说,有这样一道据说是月薪2W的笔试题:

#include "stdio.h"
void print()
{
*
}
void main()
{
}

        要求在*部分写代码使整个程序运行后输出“hello world”,有些人说,这还不简单啊,于是写出这样的代码:

01. #include "stdio.h"
02. void print()
03. {
04.     printf("hello world");
05. }
06. void main()
07. {
08.     print();
09. }

        这样写的确是没问题,但是违背了题目的要求,因为题目不允许修改main函数,这下仿佛我们就没辙了,因为我们学习C/C++语言的时候,明确说明main函数是程序的主函数,也是程序的入口函数,可是现在主函数为空,那怎么会执行子函数呢?

        其实这个笔试题考察的不是我们对基本知识的理解,而是要学会发现问题解决问题的能力,有时候,当一条路走不通的时候,我们就要换一条路,通过查找资料,我们发现其实C++是可以修改入口函数的。

        这里需要一个C++预编译标识符 #pragma comment()   来帮助我们搞定这个问题。他的使用类型是:pragma comment( comment-type ,["commentstring"] )。

        comment-type是一个预定义的标识符,指定注释的类型,应该是compiler,exestr,lib,linker之一。

        commentstring是一个提供为comment-type提供附加信息的字符串。

        这里我们需要使用linker来修改链接设置:

#pragma comment(linker, "/entry:print")

        看到了么?通过/entry参数来设置程序链接时候的主函数为print,这样,就相当于print函数是整个程序的主函数,他替换了main函数的作用,相反的,main函数则成为了一个子函数

        完整的代码和运行结果如图所示:

        至于#pragma comment(lib, "msvcrt.lib")是因为使用了puts函数,如果使用printf的话可以不要这一句

 






本文转自夏雪冬日博客园博客,原文链接:http://www.cnblogs.com/heyonggang/archive/2013/04/25/3042531.html,如需转载请自行联系原作者

目录
相关文章
|
10月前
|
存储 数据采集 JSON
你知道吗?html_table可以提取的不止是表格
`html_table` 是一种强大的工具,不仅用于HTML表格解析,还在现代爬虫技术中发挥重要作用。它可以提取、整合、分析和传输多种类型的关键数据。本文从四个方面探讨其功能:关键数据提取(如财经网站的股票信息)、零散信息整合(如电商网站的产品详情)、数据对比分析(如手机性能参数对比)和数据存储与传输(如转换为CSV/JSON格式)。通过Python代码示例,展示了如何利用代理IP、多线程和自定义请求头提高爬虫效率,实现对复杂网页数据的全面抓取和利用。
346 12
你知道吗?html_table可以提取的不止是表格
|
缓存 运维 安全
云巧组件标准
可组装式应用的理论,结合了云原生的理念和交付质量要求,云巧对云巧组件设计了六大维度的标准。根据这六大维度名称的英文首字母组成单词ACCORD
2673 0
|
存储 安全 JavaScript
解释 XSS 攻击及其预防措施
【8月更文挑战第31天】
1345 0
|
机器学习/深度学习 人工智能 运维
智能运维:AI在IT管理中的角色与影响
随着技术的飞速发展,AI已经渗透到我们生活的各个领域,包括IT运维。本文将深入探讨AI如何改变传统运维模式,提高效率和准确性,并分析其对未来运维趋势的影响。
364 0
|
人工智能 搜索推荐 安全
操作系统的演变之旅:从命令行到图形用户界面
在数字时代的浪潮中,操作系统作为计算机硬件与软件之间的桥梁,经历了从简单到复杂、从专业到普及的转变。本文将带领读者回顾操作系统的发展历程,探讨其技术演进背后的哲学思考,并展望未来操作系统可能的发展趋势。通过深入浅出的语言,我们将一同探索操作系统如何影响我们的工作和生活,以及它如何在不断变化的技术环境中适应和进化。
|
网络协议 网络架构
计算机网络中MSS和MTU的区别
【4月更文挑战第11天】
1965 0
计算机网络中MSS和MTU的区别
|
存储 消息中间件 分布式计算
flink的常见知识点总结(一)
flink的常见知识点总结(一)
|
存储 算法 网络性能优化
带你读《存储漫谈:Ceph原理与实践》——3.1.5 QoS
带你读《存储漫谈:Ceph原理与实践》——3.1.5 QoS
|
Ubuntu 关系型数据库 MySQL
Ubuntu安装MariaDB-10.3数据库(等同于Mysql-5.7)
Ubuntu安装MariaDB-10.3数据库(等同于Mysql-5.7)
564 0
|
Java
《《阿里巴巴Java开发手册》1.3.0版本【非最新版】》电子版地址
《阿里巴巴Java开发手册》1.3.0版本【非最新版】
290 0
《《阿里巴巴Java开发手册》1.3.0版本【非最新版】》电子版地址