C 中C风格字符串基本概念介绍
创始人
2024-06-22 19:41:15
0次

C++编程语言作为一款C语言的升级版本,支持C语言中的各种功能,有经验的编程人员可以很轻松的上手这款语言。今天我们就为大家介绍C++中C风格字符串的具体应用,让大家体验一下其中的C语言特点。#t#

C++提供了两种字符串的表示C风格的字符串和标准。 C++引入的string 类类型一般我们建议使用string 类。但实际上在许多程序的情形中我们有必要理解和使用老式的C++中C风格字符串。在第7 章我们会看到一个例子。它处理命令行选项而这些选项被作为C 风格的字符串数组传递给main()函数

C 风格的字符串起源于C 语言并在C++中继续得到支持。实际上在标准C++之前除了第三方字符串库类之外它是惟一一种被支持的字符串。字符串被存储在一个字符数组中一般通过一个char*类型的指针来操纵它标准C 库为操纵C++中C风格字符串提供了一组函数例如:

  1. // 返回字符串的长度  
  2. int strlen( const char* );  
  3. // 比较两个字符串是否相等  
  4. int strcmp( const char*, const char* );  
  5. // 把第二个字符串拷贝到***个字符串中  
  6. char* strcpy(char*, const char* ); 

标准C 库作为标准的C++的一部分被包含在其中为使用这些函数我们必须包含相关的C 头文件

  1. #include  

指向C++中C风格字符串的字符指针总是指向一个相关联的字符数组,即使当我们写一个字符串常量时,如:

  1. const char *st = "The expense of spirit\n"; 

系统在内部也把字符串常量存储在一个字符串数组中,然后st 指向该数组的***个元素。那么我们怎样以字符串的形式来操纵st 呢?一般地我们用指针的算术运算来遍历C 风格的字符串,每次指针增加1 直到到达终止空字符为止例如:

  1. while ( *st++ ) { ... } 

char*类型的指针被解除引用并且测试指向的字符是true 还是false 。true 值是除了空字符外的任意字符(空字符在判断语句中被莫认为是假),++是增加运算符它使指针对指向数组中的下一个字符。一般来说当我们使用一个指针时在解除指针的引用之前测试它是否指向某个对象是必要的,否则程序很可能会失败例如:

  1. int  
  2. string_length( const char *st )  
  3. {  
  4. int cnt = 0;  
  5. if ( st )  
  6. while ( *st++ )  
  7. ++cnt; return cnt;  
  8. } 

以上就是对C++中C风格字符串的相关介绍。

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何更省钱? 近期特价热门硒鼓... 如今激光打印设备已经成为商务或企业的绝对主力办公设备,但采购者往往忽视了激光打印设备所用的耗材,相对...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...