![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c 专家编程
文章平均质量分 75
王教余
码农
展开
-
c实现字符串长度计算
#include "stdafx.h" #include #include #include std::size_t str_len(const char* str) { std::size_t len = 0; while(*str++!='\0') ++len; return len; } int main(void ) { char*原创 2013-01-22 21:02:02 · 764 阅读 · 0 评论 -
重写strncpy函数
#include "stdafx.h" #include #include #include #include char* str_ncpy(char* des,const char* sr,std::size_t n) { std::size_t t; for(t=0;t<n;t++) { *(des+t)=*(sr+t); } *(des原创 2013-01-22 21:42:53 · 1565 阅读 · 0 评论 -
大小端、位段(或者叫位域)和内存对齐
听到好几个朋友说到去一些公司做面试,总是遇到关于大小端、位段(或者叫位域)和内存对齐的考题,然后就不知所措了。虽然我认为很多开发根本就用不到这个,但是我认为很有必要学习理解这些知识点,因为它可以让你更了解C++的,了解程序在内存的运行情况,也能加深对计算机系统的理解。 声明:由于本文的代码会受到计算机环境的影响,故在此说明本篇博文中的程序的运行环境。 1、Mi转载 2013-01-30 13:29:38 · 2827 阅读 · 0 评论 -
单向链表逆序
2、 单链表逆序 第二个题目是很经典的“单链表逆序”问题。很多公司的面试题库中都有这道题,有的公司明确题目要求不能使用额外的节点存储空间,有的没有明确说明,但是如果面试者使用了额外的节点存储空间做中转,会得到一个比较低的分数。如何在不使用额外存储节点的情况下使一个单链表的所有节点逆序?我们先用迭代循环的思想来分析这个问题,链表的初始状态如图(1)所示: 图(1转载 2013-03-31 22:56:49 · 4169 阅读 · 0 评论 -
查找树(二叉树)的构建以及分层遍历
代码均通过vs2008编译运行 头文件代码: #include #include //包含stack和queue,为了方便遍历数据存储 #include struct BTree//定义查找树的结构 { int m_data; struct BTree* m_pLeft; struct BTree* m_pRight; }; struct BTre原创 2013-04-02 20:40:34 · 1153 阅读 · 2 评论 -
腾讯2012年实习生笔试加分题
之前参加2012年腾讯实习生笔试时,在考场中遇到一道加分题,当时灵光一闪,直接挥笔就解决这道题目。今天看到学校论坛上有师弟师妹们在询问这题的解法,就写篇博客来分享我的解法吧,也欢迎大家讨论其它解法。 首先来看题目描述: 三 、加分题 28)给定一数组a[N],我们希望构造数组b [N],其中b[j]=a[0]*a[1]…a[N-1] / a[j],在构造过程中,不允许使用除法:转载 2013-04-02 20:47:15 · 1284 阅读 · 0 评论 -
C可变参数列表
C语言的可变参数列表通过stdarg.h头文件中定义的stdarg宏来实现的,这个头文件什么了一个类型va_list和三个宏va_start、va_arg、va_end。可变参数就是通过这几个来实现的。下面给出代码,通过VS2008编译。 #include #include #include float average(int n_values,...)//n_values 是原创 2013-06-02 15:27:20 · 771 阅读 · 0 评论 -
不用下标操作实现字符串回文判断
如题,贴出代码,代码通过VS2008编译 #include #include /* judging a string is a palindrome or not*/ int judge_palindrome(const char* str=NULL) { if (str==NULL) { return -1; } cha原创 2013-06-04 13:13:42 · 842 阅读 · 0 评论