社区
C++ 语言
帖子详情
一个关于string转int的问题
olncy
2006-10-01 11:03:16
string temp;
int Length=0;
const char* ch=temp.c_str();
cin>>temp;
Length=atoi(ch);
cout<<Length;
以上程序为什么Length永远是0???????
有没有更好的方法把string转成int???
谢谢。
...全文
864
14
打赏
收藏
一个关于string转int的问题
string temp; int Length=0; const char* ch=temp.c_str(); cin>>temp; Length=atoi(ch); cout<<Length; 以上程序为什么Length永远是0??????? 有没有更好的方法把string转成int??? 谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mr_moran
2006-10-07
打赏
举报
回复
天外有天~!
学习 。。。
taodm
2006-10-07
打赏
举报
回复
呃,手脚快了点,应该int i = boost::lexical_cast<int>(str);
taodm
2006-10-07
打赏
举报
回复
to coldwindtang(风),你这个也实在够复杂了。要简单当然是boost::lexical_cast
cin >> str; // 先输入string
int i = boost::lexical_cast(str);
cout << i;
唐巧
2006-10-07
打赏
举报
回复
这样做比较方便吧,我一直这样做的。
#include <cstdio>
#include <iostream>
#include <string>
using namespace std;
int main(void)
{
string str;
cin >> str; // 先输入string
sscanf(str.c_str(), "%d", &i); //这样读入
cout << i;
return 0;
}
liumingrong
2006-10-07
打赏
举报
回复
int intstr = boost::lexical_cast<int,string>(str);
jixingzhong
2006-10-07
打赏
举报
回复
Length ...
楼主你用这个变量名不是摆明了要误导别人么 ...
atoi 函数是转换字符串为整数,
如果这个字符串不可转化,
得到自然是 0 ...
所以,你的字符串必须是 数字字符串,
不是所有的字符都可转换,但是至少开始部分必须是数字字符。
olncy
2006-10-07
打赏
举报
回复
jixingzhong(瞌睡虫:选择了远方,只顾风雨兼程!)
sorry,Length 这个变量名确实有点误导。
其实问题出在
cin >> str;
const char *p = str.c_str();
这两句上,我没注意到const char 这个类型。
我把分给了最先发现这问题的人。
MeE
2006-10-03
打赏
举报
回复
string temp;
int Length=0;
cin>>temp;
const char* ch=temp.c_str();
Length=atoi(ch);
cout<<Length;
这样才差不多
MeE
2006-10-03
打赏
举报
回复
const char* ch=temp.c_str(); 这个是啥意思
初始化就=一个空串?
后面又没改变 不是0才怪了
taodm
2006-10-01
打赏
举报
回复
呃,string的接口说明要认真看的。
c_str()方法在调用其它任何非cosnt接口后即不保证有效。
还算好,没误掉data()接口,就会问为啥字符串长度不对。
Jokar
2006-10-01
打赏
举报
回复
// 0.cpp : defines entry point for application;
#include <iostream>
#include <string>
using namespace std;
int main(void)
{
string str;
cin >> str; // 先输入string
const char *p = str.c_str();
int i = atoi(p);
cout << i;
return 0;
}
du51
2006-10-01
打赏
举报
回复
#include<iostream>
#include<sstream>
#include<string>
using namespace std;
int main()
{
int result=0;
string integer="666";
stringstream ss;
ss<<integer;
ss>>result;
cout<<result<<endl;
system("PAUSE");
return 0;
}
OOPhaisky
2006-10-01
打赏
举报
回复
atoi函数,如果输入字符串无法转换成数字,则返回0。
OOPhaisky
2006-10-01
打赏
举报
回复
以上程序为什么Length永远是0???????
------------------------------------------------------
如果楼主输入的不是“数字”,那肯定Length的结果是0,如楼主输入:
abf
但是如果楼主输入的是“数字”,则Length的结果就是楼主输入的数字,如楼主输入:
23
则Length也是23。
大学生创新创业训练计划经验分享.zip
大学生创新创业训练计划(以下简称为“大创计划”)是一项旨在提升大学生创新能力和创业精神的实践活动。通过这项计划,学生可以在导师的指导下,自主开展研究性学习和创业实践。下面我将分享一些关于大创计划的经验和建议。
node-v12.22.3-x86.msi
Node.js,简称Node,是
一个
开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
毕业设计-The coding solutions of Leetcode and 剑指Offer using .zip
这里为你收集整理了关于毕业设计、课程设计可参考借鉴的资料一份,质量非常高,如果你投入时间去研究几天相信肯定对你有很大的帮助。到时候你会回来感谢我的。 本资源是经过本地编译测试、可打开、可运行的项目、文件或源码,可以用于毕业设计、课程设计的应用、参考和学习需求,请放心下载。 祝愿你在这个毕业设计项目中取得巨大进步,顺利毕业! 但还需强调一下,这些项目源码仅供学习和研究之用。在使用这些资源时,请务必遵守学术诚信原则和相关法律法规,不得将其用于任何商业目的或侵犯他人权益的行为。对于任何因使用本资源而导致的
问题
,包括但不限于数据丢失、系统崩溃或安全漏洞,风险自担哦!
【微信小程序毕业设计】宠物店商城系统开发项目(源码+演示视频+说明).rar
【微信小程序毕业设计】宠物店商城系统开发项目(源码+演示视频+说明).rar 【项目技术】 微信小程序开发工具+java后端+mysql 【演示视频-编号:282】 https://pan.quark.cn/s/cb634e7c02b5 【实现功能】 本系统实现的是和宠物相关的信息管理和发布,加入了商品销售的功能。操作角色为管理员和用户、商家,管理员的功能为用户管理、商家管理、宠物分类管理、宠物信息管理、商品分类管理、宠物用品管理、项目类型管理、服务项目管理、宠物日志管理、订单管理等;用户的功能为购买宠物、商品、预约服务发表日志管理订单等。商家功能为提供宠物、宠物用品、宠物服务,管理订单和服务预约等。
雷迪森的工具包(95分以上课程大作业).zip
Java SSM项目是一种使用Java语言和SSM框架(Spring + Spring MVC + MyBatis)开发的Web应用程序。SSM是一种常用的Java开发框架组合,它结合了Spring框架、Spring MVC框架和MyBatis框架的优点,能够快速构建可靠、高效的企业级应用。 1. Spring框架:Spring是
一个
轻量级的Java开发框架,提供了丰富的功能和模块,用于开发企业级应用。它包括IoC(Inverse of Control,控制反
转
)容器、AOP(Aspect-Oriented Programming,面向切面编程)等特性,可以简化开发过程、提高代码的可维护性和可测试性。 2. Spring MVC框架:Spring MVC是基于Spring框架的Web框架,用于开发Web应用程序。它采用MVC(Model-View-Controller,模型-视图-控制器)的架构模式,将应用程序分为模型层、视图层和控制器层,提供了处理请求、渲染视图和管理流程的功能。 3. MyBatis框架:MyBatis是
一个
持久层框架,用于与数据库进行交互。它提供了一种将数据库操作与Java对象映射起来的方式,避免了手动编写繁琐的SQL语句,并提供了事务管理和缓存等功能,简化了数据库访问的过程
C++ 语言
64,651
社区成员
250,488
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章