目录

1. 要点

2. c_str()


1. 要点

在c++中直接利用printf("%s",s) 是不允许的,因此c++中提供了一个函数c_str()对字符串进行转换,接着再利用%s 输出。

2. c_str()

该函数是 string 类函数中 的一个成员函数,此函数的作用就是将C++的string转化为C的字符串(char *)数组,即生成一个const char *指针,指向字符串的首地,其指针指向的内容与string 类型的字符串一摸一样。

1. 用法: string.c_str(),其中string为实例对象​​​​​​​

string s="1234";
printf("%s",s.c_str());

2. 注意 :转换后的字符串数组的数据是临时的,当有一个改变这些数据的成员函数被调用后,其中的数据就会失效,主动变成新的内容。

const char *c;string s = "1234567";c = s.c_str(); cout<<c<<endl; // 1234567s = "abc";cout<<c<<endl; // abcde

C++:利用printf 输出string相关推荐

  1. printf输出string类型

    方法 用c_str()函数 C++ string的介绍 string 是C++中的字符串. 字符串对象是一种特殊类型的容器,专门设计来操作的字符序列. 不像传统的c-strings,只是在数组中的一个 ...

  2. printf()函数不能直接输出string类型

    因为string不是c语言的内置数据,所以直接printf输出string类型的是办不到的. 要这样输出: printf("%s\n",a.c_str()); 举例: #inclu ...

  3. 利用c语言中printf输出图形

    c语言中利用printf输出图形 通过对c语言中printf的使用,我根据自己对*符号的排版利用dev c++编译出了一个菱形的图案.感受到了通过高级程序语言输出自己构建的内容的乐趣.在这个过程中,计 ...

  4. printf不能直接输出string类型

    近期研究设计模式,在程序输出时心血来潮用了c版本的printf,结果就蛋疼了,一直输出是乱码, string s = "中国"; printf("%s" , s ...

  5. java 利用printf格式化输出

    import java.util.Date;/*** 使用printf输出*//**关键技术点* 使用java.io.PrintStream的printf方法实现C风格的输出* printf 方法的第 ...

  6. printf输出字符串_c语言入门 第十二章 字符串

    在c当中有一种数组是由char类型构成的,其中的元素都是字符,如果这个字符数组是以字符编码0('0'字符)结尾的,那么我们就叫这个字符数组为字符串 字符串的数据常量形式是使用双引号包围的字符序列 1 ...

  7. printf()输出

    printf()函数是式样化输出函数, 一般用于向准则输出设备按规定式样输出消息.正在编写步骤时经常会用到此函数.printf()函数的挪用式样为: printf("<式样化字符串&g ...

  8. C语言学习之利用指针输出二维数组任一行任一列元素的值

    利用指针输出二维数组任一行任一列元素的值. int main(){int a[3][4];int i,j,x,y;int (*p)[4];//指针变量p指向包含4个整型元素的一维数组printf(&q ...

  9. 利用循环输出如下图形

    利用循环输出如下图形. [cpp] view plain copy * ** *** **** ***** #include<stdio.h> void main() { int i,j; ...

最新文章

  1. sql中将分隔字符串转为临时表的方法
  2. 机器学习中使用的交叉熵(cross entropy)透彻分析
  3. excel表格制作计算机一级,计算机一级OFFICE辅导:给Excel表格添加背景音乐
  4. 教育部:建设100+AI特色专业, 500万AI人才缺口要补上!
  5. Jzoj3931【NOIP2014day1官方数据】联合权值
  6. 使用matlab版卷及神经网络 MatconvNe和预训练的imageNet进行图像检Image retrieval using MatconvNet and pre-trained imageNet
  7. 简明docker教程 1
  8. vs与git中间的阻拦--Git failed with a fatal error. error: open(“.vs/GBA/v16/Server/sqlite3/db.lock
  9. elasticsearch-jdbc同步myslq数据到elasticsearch
  10. bzoj3122 [Sdoi2013]随机数生成器(bsgs+扩欧+数列)
  11. 负载均衡Ribbon和Feign---SpringCloud
  12. NFC是什么功能?有哪些使用场景?
  13. 计算机中的基础元素,数据结构基础
  14. 2018,程序员要搭配这40条编程箴言!!!条条都是干货
  15. ie11只能用管理员身份打开解决办法
  16. 波普尔心智格列高利心智_心智与人工智能理论
  17. oracle的监听服务详解
  18. 深入浅出、通俗易懂的讲解CAN bus
  19. 网络计算模式复习大纲
  20. 长春甲骨文华育兴业|大数据社会的十三大具体应用场景

热门文章

  1. Axure RP 9 基础教程
  2. 计算机如何接两个屏幕,如何为一台电脑设置两个显示器
  3. 使用py2exe的简单指南
  4. 行人reid ,多个开源地址数据变成 market1501格式合并,附代码,数据地址
  5. 删除浏览器浏览器删除cookie方法
  6. 电压有效值电容和电感的电压电流相位关系以及电抗和容抗值推导
  7. 【conda安装】mamba安装 ==conda安装记录
  8. Vue3-浏览器兼容性 IE篇
  9. 基于nonebot2+go-cqhttp的QQ机器人构建(1)机器人搭建
  10. Zookeeper序列化及通信协议