c语言字符串占据字节数
# include <stdio.h>
//字符串占据的字节数
/*
不能将一个字符串常量赋给一个字符变量
为什么不能将一个字符串常量赋给一个字符变量?可以从两个方面作出解释:
前面讲过,字符变量用 char 定义。一个字符变量中只能存放一个字符。而字符串一般都有好多字符,占多字节。
所以不能将多个字符赋给只占一字节的变量。那么如果字符串常量的双撇号内什么都不写,
此时就只有一个字符 '\0',那么此时可不可以将它赋给字符变量?不可以!原因看下面第二点。
字符串是指一系列字符的组合。在 C 语言中,字符变量的类型用 char 定义。
我们这里讲的是数据类型,但是字符串不属于数据类型,也就不存在字符串变量。
一种类型的变量要想存储某个对象,必须能兼容该对象的数据类型,而字符串连数据类型都算不上,又怎么能将它赋给字符变量呢?
所以在 C 语言中,任何数据类型都不可以直接存储一个字符串。那么字符串如何存储?
在 C 语言中,字符串有两种存储方式,一种是通过字符数组存储,另一种是通过字符指针存储。
*/
int main()
{
printf("%d\x20", sizeof(""));//\x20表示16进制,对应十进制32,对应的字符是空格
printf("%d\x20", sizeof("a"));
printf("%d\x20", sizeof("CHINA"));
printf("%d\x20", sizeof("How are you"));
printf("%d\x20", sizeof("I love you"));
printf("%d\n", sizeof("你好"));
return 0;
}
结果:
c语言字符串占据字节数的更多相关文章
- 面试题之java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要求不能出现截半的情况
题目:10. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串. 但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输 ...
- java根据输入的字符串和字节数来截取,输出对应字节数的字符串
public class Test { //要进行截取操作的字符串 static String ss; //截取的字符串的字节数 static int n; public static void ma ...
- js计算字符串的字节数和字符串与二进制的相互转化
一.js计算字符串的字节数方法: //blob获取字符串的字节 var debug = "好的"; var blob = new Blob([debug],{type : 'tex ...
- 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。
一.需要分析 1.输入为一个字符串和字节数,输出为按字节截取的字符串--->按照字节[byte]截取操作字符串,先将String转换成byte类型 2.汉字不可以截半--->汉字截半的话对 ...
- java算法面试题:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个, 如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉的半个”。
package com.swift; import java.util.Scanner; public class Hanzi_jiequ { public static void main(Stri ...
- c# 判断字符是否是全角, 获取字符串的字节数 , 获取字符串指定长度字节数的字符串
1 Encoding.Default.GetByteCount(checkString); =2 全角 =1 半角 /// <summary> /// 获取字符串的字节长度 /// &l ...
- js检测字符串的字节数
在js中字符串可以存放数字,字母或者汉字,但是又一个问题就是,数字和字母都是占一个字节,而一个汉字占2个字节.如果在一个字符串中既有字母又有汉字怎么判断字节数呢 第一种简单粗暴 var str = ' ...
- python 字符串和字节数互转
在 python 中字符 是 str 类型, 字节是 bytes 类型 b = b'hello' # bytes 字节 s= 'hello' # str 字符串 可通过 type() 检查是什么类型 ...
- c语言中的字节数关系、
转载自:传送门 16位编译器 char :1个字节 char*(即指针变量): 2个字节 short int : 2个字节 int: 2个字节 unsigned int : 2个字节 float: ...
随机推荐
- 根据某个数据 来筛选 DataTree 分支数里面的数据是否符合规则 进行筛选分支,展示
问题:如何在 DataTree 树形数据里每个分支里根据特定某个元素值,然后挑选出来 思路:先把分支提取出来,每个都要进行判断. 主要用到的电池: >.Cull Pattern 拓展资料:以下是 ...
- pytorch空间变换网络
pytorch空间变换网络 本文将学习如何使用称为空间变换器网络的视觉注意机制来扩充网络.可以在DeepMind paper 阅读更多有关空间变换器网络的内容. 空间变换器网络是对任何空间变换的差异化 ...
- java并发编程JUC第九篇:CountDownLatch线程同步
在之前的文章中已经为大家介绍了java并发编程的工具:BlockingQueue接口.ArrayBlockingQueue.DelayQueue.LinkedBlockingQueue.Priorit ...
- 关于Linux服务器部署
服务器信息: 此小节的内容: SecurityCRT:用来连接到Linux服务器命令操作. FTP(FTPRush):本地文件和Linux服务器文件交互的 工具服务器 借助客户端工具来链接到Linux ...
- XML从入门到深入(超详细)
一:什么是XML XML (eXtensible Markup Language)指可扩展标记语言,标准通用标记语言的子集,简称XML.是一种用于标记电子文件使其具有结构性的标记语言. XML可以标记 ...
- 【进阶之路】深入理解Java虚拟机的类加载机制(长文)
我们在参加面试的时候,经常被问到一些关于类加载机制的问题,也都会在面试之前准备的时候背好答案,但是我们是否有去深入了解什么是类加载机制呢?这段时间因为一些事情在家看了些书,这次就和大家分享一些关于Ja ...
- 20204107 孙嘉临《PYTHON程序设计》计算器设计实验二报告
课程:<python程序设计> 班级:2041 姓名:孙嘉临 学号:20204107 实验教师:王志强 实验日期:2021年4月12日 必修/选修:公选课 ##一.实验内容 设计并完成一个 ...
- 简述MSTP与配置
一.简介 二.MSTP概述 三.功能 四.配置命令 一.简介 多生成树协议MSTP(Multiple Spanning Tree Protocol)是IEEE 802.1s中定义的生成树协议,通过生成 ...
- python读取json文件制作股票价格走势
- 1、SpringBoot整合之SpringBoot整合JSP
SpringBoot整合JSP 一.创建SpringBoot项目,仅选择Web模块即可 二.在POM文件中添加依赖 <!-- 添加servlet依赖模块 --> <dependenc ...