文章目录

  • 1、测试size_t类型
  • 2、获取视频教程
  • 3、版权声明

在C语言中,很多库参数的参数和返回值的数据类型是size_t,让很多初学都不理解。size_t不是C语言的关键字,也不是基本数据类型,而是C语言自定义的数据类型。

例如以下库函数的声明:

size_t strlen(const char *s);
void *memset(void *s, int c, size_t n);
char *strncpy(char *dest, const char *src, size_t n);
void *malloc(size_t size);

1、测试size_t类型

关于size_t的定义,百度一下,发现有很多种说法,这些说法不一定准确,不同的操作系统,不同的C语言编译器和版本各不相同,我们用以下代码来测试一下。

/** 程序名:book.c,此程序用于测试size_t类型。* 作者:C语言技术网(www.freecplus.net) 日期:20190525。
*/
#include <stdio.h>
#include <string.h>int main()
{size_t ii;ii=1234567890;printf("ii=%ld,sizeof(ii)=%ld\n",ii,sizeof(ii));ii=-1234567890;printf("ii=%ld,sizeof(ii)=%ld\n",ii,sizeof(ii));
}

运行效果

我采用的是64位的CentOS7,从上面测试的结果可以看出,size_t其实就是一个8字节的长整数。

那么C语言编译器为什么要定义size_t?使用size_t可能会提高代码的可移植性、有效性或者可读性,它的定义大致如下:

typedef unsigned long size_t;

没什么特别。

2、获取视频教程

百万年薪程序员录制,《C/C++高性能服务开发基础》视频教程已在CSDN学院发布,优惠价12元,地址如下:
https://edu.csdn.net/course/play/29402

3、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

来源:C语言技术网(www.freecplus.net)

作者:码农有道

如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发此文,让更多的人可以看到它,谢谢!!!

C语言size_t类型相关推荐

  1. c语言 sizeof size_t,C/C++中的sizeof运算符和size_t类型的详解

    sizeof的作用 sizeof是c的运算符之一,用于获取操作数被分配的内存空间,以字节单位表示. 这里指的操作数,可以是变量,也可以是数据类型,如int,float等.所以就可以通过它来获取本地c库 ...

  2. C语言取小于自身的最大整数,C语言整数类型(含取值范围和长度)

    C语言支持 5 种带符号的整数类型.其中大多数整数类型具有多个同义词,见表1.表1:带符号的标准整数类型类型同义词 signed char intsigned, signed int shortsho ...

  3. C语言中size_t类型详细说明【转载】

    在c语言的很多库函数中,函数原型中,参数类型都是size_t.但是在我们编写程序时size_t类型却很少有所使用.那么这个类型到底有什么作用呢 使用size_t可能会提高代码的可移植性.有效性或者可读 ...

  4. 智能合约语言Solidity 类型介绍

    链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 智能合约语言Solidity 类型介绍11 Solidity是以太坊智能合约编程语言,阅读本文前,你应该对以太坊.智能合 ...

  5. C语言数组类型、数组指针类型、数组指针类型变量

    C语言数组类型.数组指针类型.数组指针类型变量 数组类型 数组指针类型 数组指针用于指向一个数组 数组指针:用数组类型加*定义一个数组指针 数组指针:定义一个数组指针类型,然后用类型定义变量 数组指针 ...

  6. C语言size_t和size_type比较

    该博文为原创文章,未经博主同意不得转载,如同意转载请注明博文出处 本文章博客地址:https://cplusplus.blog.csdn.net/article/details/105163719 s ...

  7. python语言的类型是_Python语言类型

    Python是一门动态解释型的强类型语言. 对这句话进行解析,语言分为动态的和静态的,编译型和解释型的,强类型的和弱类型的语言之分. 下面对三种不同维度的类型的语言进行解释: 1.编译型和解释型 差别 ...

  8. 生成跨语言的类型声明和接口绑定的工具(Djinni )

    Djinni 是一个用来生成跨语言的类型声明和接口绑定的工具,主要用于 C++ 和 Java 以及 Objective-C 间的互通. 示例接口定义文件: 1 # Multi-line comment ...

  9. C语言删掉无关变量无输出,C语言变量类型与输出控制用法实例教程

    本文实例讲述了C语言变量类型与输出控制用法,有助于读者很好的对其进行总结与归纳.该实例分享给大家供大家参考借鉴之用.具体如下: 完整实例代码如下: /************************* ...

最新文章

  1. Device.js——检测设备平台、操作系统的Javascript 库
  2. 【性能】模糊查询性能提升
  3. QDU-GZS and String
  4. Visual C#使用ADO.NET自定义类MyDBase连接SQL Server数据库
  5. python画图颜色种类_Python可视化|matplotlib07-python colormap(颜色映射)(三)
  6. LeetCode MySQL 1070. 产品销售分析 III(group by 陷阱)
  7. 各位 PHPer,Serverless 正当时
  8. RMAN备份与恢复(三)--备份相关概念
  9. 图像预处理第1步:将256色图像转化为灰度图像
  10. mysql中预设的拥有_MySQL中预设的、拥有最高权限超级用户的用户名为
  11. pointer在html作用,详解pointer-events属性的使用
  12. 第十七节:通信之WLAN(WPA3-Ⅰ)
  13. python中的list 冒号用法
  14. 反爬与反反爬常见知识点
  15. Spine 实用技巧大全
  16. 【MindSpore】 No module named apos;mindspore.dataset.transformsapos;
  17. 特警把那盅犯形容的汝么厉害
  18. springboot丽江市旅游服务网站的设计与实现.rar(论文+项目源码)
  19. 数学建模——减肥模型Python实现
  20. python100内3整除while,python-day5

热门文章

  1. 微课|玩转Python轻松过二级(3.3节):字典使用要点
  2. 《Python程序设计》实验指导书(30个实验)
  3. Python标准库random用法精要
  4. android版本管理工具下载,apk应用管理app下载
  5. Java 第五章 类的设计与包
  6. Linux 写入ntfs很慢,ntfs-3g 写入 速度优化
  7. python删除特定的几行数据_Python:分成几行,并根据搜索删除特定行 - python
  8. button按钮样式_各种好看的小按钮合集,纯css编写,最近在学习时遇到的,记录成为笔记...
  9. cell数组变为字符串_字符串匹配 ---- BM 算法原理
  10. expect java ssh_使用expect实现自动化ssh以及执行命令