空闲时候思考2('\0'等价于数字0还是字符0)

/**********************************************************************
* *   Copyright (c)2015,WK Studios
* *   Filename:  A.h
* *   Compiler: GCC  vc 6.0
* *   Author:WK
* *   Time: 2015 6 7
* **********************************************************************/
#include<iostream>
using namespace std;
void main()
{
	char a[100]={'0',48,48,0,0,'0'};
	char b[]={'0',48,48,0,0,'0'};
	char c[]={'0','0'};
	char d[]={0};
	//注意一下数字0与字符'0'区别
	//'\0'等价于数字0而不是字符0
	cout<<sizeof(a)<<endl;
	cout<<strlen(a)<<endl;
	cout<<sizeof(b)<<endl;
	cout<<strlen(b)<<endl;
	cout<<sizeof(c)<<endl;
	cout<<strlen(c)<<endl;
	cout<<sizeof(d)<<endl;
	cout<<strlen(d)<<endl;

运行结果:

100

3

6

3

2

7

1

0

版权声明:本文为博主原创文章,未经博主允许不得转载。

空闲时候思考2('\0'等价于数字0还是字符0)

时间: 2024-11-06 05:13:38

空闲时候思考2('\0'等价于数字0还是字符0)的相关文章

空暇时候思考2(&amp;#39;\0&amp;#39;等价于数字0还是字符0)

/********************************************************************** * * Copyright (c)2015,WK Studios * * Filename: A.h * * Compiler: GCC vc 6.0 * * Author:WK * * Time: 2015 6 7 * *******************************************************************

字符0,数字0,‘\0’,NULL

\0是一个转义字符,将字符0转义为数字0.

Easyui的numberbox无法输入以0开头的数字编号(转载)

1.问题 项目中碰到这样一个问题,Easyui的numberbox在输入数字编号的时候不能以0开头 在我输入以0开头的数字编号后,离开输入框的时候,那个前缀0就自动去掉了. 接下来,我们查看API说明:在input框里加上 prefix属性  data-options="prefix:'0'"  就可以解决numberbox开头不能输入0的问题了 2.属性 该属性扩展自验证框(validatebox),下面是为数字框(numberbox)添加的属性. 名称 类型 描述 默认值 disa

GridView导出成Excel字符&quot;0&quot;丢失/数字丢失的处理方式 收藏

GridView导出成Excel字符"0"丢失/数字丢失的处理方式 收藏 GridView 导出成Excel文件,这个代码在网上比较多.但是发现存在一个问题,导出的数据中如果有"012457890"的内容,用Excel打开后就变成 了"12457890",少了前面的0;原因是Excel把它当作数字来格式化了,就把"0"给去掉了.   解决思路:在Excel中作一个包含有"012457890"的内容,设定单元

SQLServer中查询的数字列前面补0返回指定长度的字符串

SQLServer中查询的数字列前面补0返回指定长度的字符串: 如: 角本如下: /****** Script for SelectTopNRows command from SSMS ******/ SELECT TOP 1000 [ID] ,[SN] ,[Name] FROM [EduDB].[dbo].[TestTab] select Right('0123456',SN) from TestTab; select RIGHT(REPLICATE('0',5)+CAST(SN AS var

【JavaScript】随机生成10个0~100的数字

随机生成10个0~100不重复的数字(包含0和100): 需要用到的知识点:随机数 去重 下面放代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script> // 定义声明一个数组, 放随机生成的10个数字 var arr = []; for(var

给定N个非0的个位数字,用其中任意2个数字都可以组合成1个2位的数字。要求所有可能组合出来的2位数字的和。例如给定2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。

#include<iostream>#include<math.h>#include<stdlib.h>using namespace std;int main(){ /* * 给定N个非0的个位数字,用其中任意2个数字都可以组合成1个2位的数字.要求所有可能组合出来的2位数字的和.例如给定2.5.8,则可以组合出:25.28.52.58.82.85,它们的和为330. 输入格式: 输入在一行中先给出N(1<N<10),随后是N个不同的非0个位数字.数字间以

字符0、数字0和‘\0’

字符0.数字0和'\0'的区别 Bin(二进制) Oct(八进制) Dec(十进制) Hex(十六进制) 缩写/字符 解释 0000 0000 0 0 00 NUT(null) 空字符 00110000 60 48 30 0 字符0 ASCII码中 十进制数 0 表示空字符,空字符就是平时所说的 '\0'. 字符 0,ASCII码值为 十进制数 48,如:"012" 字符串中的 0 表示字符 0. 数字 0, 所说的数字 0,就是平时说的十进制数字 0,在字符串中表示 '\0',即空字

有17个人围成一圈(编号为0~16),从第 0号的人开始从 1报数, 凡报到 3的倍数的人离开圈子,然后再数下去,直到最后只剩下一个人为止。 问此人原来的位置是多少号?

void main() { int a[17] = { 0 };//代表17个人,值为0代表还在,1代表离开 int baoshu = 1;//当前报数的数字,最多49 int total = 17;//当前还剩多少人在 int cur = 0;//17个人的当前人循环到的编号 while (total!=1) { if (cur == 17)//说明已经走到下一圈了,需要保证当前人的编号 { cur = 0; } if (a[cur] == 1)//说明该人已经离开圈子,报数不增加,走向下一人