C++细枝末节

有几个之前一直没有太理会的编程细节,最近又遇到了,深入研究下,做个记录。

1.<winsock2.h>和<windows.h>重复引用的问题。
socket编程时经常遇到该问题,一劳永逸的方法是,在所有头文件引用之前,先引用<winsock2.h>后引用<windows.h>
该问题可以升级为,对重复引用的编译错误,的理解够不够深入。以及如何解决重复引用的编译错误。

2.sscanf函数,很多高级用法。自己经常遇到一些格式化输入的问题,搞得很头疼,都可以用sscanf解决。
该问题暴露出,自己对c语言的一些基本函数不熟悉的问题。看来自己的编程语言基础不踏实。

例如:格式化输入字符串“2015年01月20日16时58分04秒”,
代码:
SYSTEMTIME ss;
// "%*2s"标识跳过2个任意字符
sscanf("2015年01月20日16时58分04秒","%d%*2s%d%*2s%d%*2s%d%*2s%d%*2s%d",
&ss.wYear,&ss.wMonth,&ss.wDay,&ss.wHour,&ss.wMinute,&ss.wSecond);
printf("%d-%d-%d %d:%d:%d",ss.wYear,ss.wMonth,ss.wDay,ss.wHour,ss.wMinute,ss.wSecond);

另一个问题是使用sscanf格式化不规则的输入。


3.面试被人问,c中函数有几种调用方式,自己根本没有概念,c/c++也五年了。回来百度了,是自己_thiscall、_stdcall等关键字没有深入理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值