一:对字符串的 strlen() 与 sizeof

#include <string.h>
#include <stdio.h> int main(void)
{
char* p="helo 163\n";
printf("strlen:%d sizeof: %d",strlen(p),sizeof(p));
}

输出:strlen:9  sizeof: 8

关于C字符的几种定义方法:http://hanxuedog.iteye.com/blog/1299186

关于sizeof和strlen()介绍:http://baike.baidu.com/link?url=JXd1hQfX4jLPzLfkKrOBkNSALUy4mF4Qu3BkhHowWhUseSu1WK8CD8FoZsZLgZ9kbqER1WetGbFCUdTBNzR_fq

int strlen(char *s)函数返回从内存位置s开始,直到碰到第一个字符串结束符'\0'为止的(不包括)字符的个数,编译器自动添加了‘\0’,strlen()结果没问题,换行符也算

sizeoff返回的是变量声明后所占的内存数,此外sizeof不是函数,仅仅是一个操作符.此例子中sizeof求得的是指针p这个变量所占的内存大小......指针类型在我的电脑占8个字节
#include <string.h>
#include <stdio.h> int main(void)
{
char* p="helo 163\n";
printf("strlen:%d sizeof: %d\n",strlen(p),sizeof(p)); char* t;
printf("sizeof(int):%d sizeof(char):%d sizeof指针:%d\n",sizeof(int),sizeof(char),sizeof(t));
printf("指针:%d\n",sizeof(void *));
}

害得我在smtp socket send() 时出大错啊!搞了一下午加晚上都没发现是这个的问题,原来发送时少换行符......难怪服务器半天没有发东西回来.....send()成功,我还以为recv()出错!

C/C++易错小记录的更多相关文章

  1. 【NCRE】三级网络技术 选择题易错点记录(1)

    部分易错点 连接到一个集线器的多个节点不能同时发送数据帧 嵌入式安装插座用来连接双绞线 异步串行端口 PPP 同步串行端口 PPP/HPLC 对于频繁改变位置并使用DHCP获取IP地址的DNS客户端, ...

  2. javascript 几个易错点记录

    1.清空input标签值得时候,不能用html("")清空,要用val("")清空 2.事件如果绑定多次,触发事件后,回调函数也会执行多次,所有最好把绑定事件的 ...

  3. Java五道输出易错题解析(避免小错误)

    收集了几个易错的或好玩的Java输出题,分享给大家,以后在编程学习中稍微注意下就OK了. 1. 看不见的空格? 下面的输出会正常吗? package basic; public class Integ ...

  4. 关于Verilog HDL的一些技巧、易错、易忘点(不定期更新)

    本文记录一些关于Verilog HDL的一些技巧.易错.易忘点等(主要是语法上),一方面是方便自己忘记语法时进行查阅翻看,另一方面是分享给大家,如果有错的话,希望大家能够评论指出. 关键词: ·技巧篇 ...

  5. 细节!重点!易错点!--面试java基础篇(二)

    今天来给大家分享一下java的重点易错点第二部分,也是各位同学面试需要准备的,欢迎大家交流指正. 1.字符串创建与存储机制:当创建一个字符串时,首先会在常量池中查找是否已经有相同的字符串被定义,其判断 ...

  6. [SQLXML]FOR XML语法导出XML的易错之处

    原文:[SQLXML]FOR XML语法导出XML的易错之处 [SQLXML]FOR XML语法导出XML的易错之处 Version Date Creator Description 1.0.0.1 ...

  7. Java易错知识点(1) - 关于ArrayList移除元素后剩下的元素会立即重排

    帮一个网友解答问题时,发现这样一个易错知识点,现总结如下: 1.易错点: ArrayList移除元素后,剩下的元素会立即重排,他的 size() 也会立即减小,在循环过程中容易出错.(拓展:延伸到所有 ...

  8. python函数使用易错举例

    关于嵌套: 嵌套使用中,  retrun inner  ---> 返回的是函数的地址 retrun inner() :    --->  运行inner()函数   ---> 运行i ...

  9. python易错知识集合

    本篇用于记录在写leetcode时遇到的python易错知识. 2019.8.29 1.Python range() 函数用法: range(start, stop[, step]) start: 计 ...

随机推荐

  1. [转载]Android开发常用调试技术记录

    ANDROID 调试技术: 1)Ps 指令 ls –l /proc/27/ cat /proc/27/cmdline       #cmdline文件表示了这个进程所在的命令行. cat /proc/ ...

  2. linux 下网站压力测试工具webbench

    一直在用webbench ,这个linux下的网站压力测试工具.整理下. 笔记本装的ubuntu,其他linux系统也差不多. webbench 需要先安装 ctags,一个vim的阅读插件,可以直接 ...

  3. [ES6] 18. Map

    ES6 provides Map, it is a set of k-v pair. Key can be number, string, object, function and even unde ...

  4. gulp如何自定义插件

    gulp是基于”流“的构建工具,上层流的输出就是下层流的输入,为了更好的支持链式操作,可以使用through2或者map-stream这两个库来对node stream做一层包装 这里,我们就使用th ...

  5. Apache Shiro Architecture--官方文档

    原文地址:http://shiro.apache.org/architecture.html Apache Shiro's design goals are to simplify applicati ...

  6. Linux shell 脚本攻略之文件查找与文件列表

    摘自:<Linux shell 脚本攻略>

  7. 小白日记3:kali渗透测试之被动信息收集(二)-dig、whios、dnsenum、fierce

    一.DIG linux下查询域名解析有两种选择,nslookup或者dig.Dig(Domain Information Groper)是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,M ...

  8. jquery-ui autocomplete 自动完成功能

    效果图

  9. android源码编译常见错误

    错误1:You are attempting to build on a 32-bit system. Only 64-bit build environments are supported bey ...

  10. Samba服务详解

    Samba文件服务器 本章结构 服务简介 SMB协议 Server Message Block,服务消息块 CIFS协议 Common Internet File System,通用互联网文件系统 S ...