社区
C++ 语言
帖子详情
加班中,求助,一段内存与字符串的操作!~
reddatura
2004-10-02 03:27:25
我有一段内存
char * pData 已经指向了这段内存
里面连续存放了几个字符串
现在我想把几个字符串提取出来
但是办不到
我用char ** pTemp = &pData;
然后取pTemp[0], pTemp[1]
请问这样做有和问题?
为何我pTemp1[1]后面去出来的数据都不正确呢?
谢谢
...全文
138
17
打赏
收藏
加班中,求助,一段内存与字符串的操作!~
我有一段内存 char * pData 已经指向了这段内存 里面连续存放了几个字符串 现在我想把几个字符串提取出来 但是办不到 我用char ** pTemp = &pData; 然后取pTemp[0], pTemp[1] 请问这样做有和问题? 为何我pTemp1[1]后面去出来的数据都不正确呢? 谢谢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xuzheng318
2004-10-02
打赏
举报
回复
!!
sungp5211
2004-10-02
打赏
举报
回复
这样写程序不大好吧~~~不过,要是知道总长度的话,还能勉强用~~
同意hotrain兄弟。
hotrain
2004-10-02
打赏
举报
回复
“烟雨平生” 与 “老渔翁”的方法老有一个问题:都假定字符串之间只有一个0字符,如果有多个字符呢?怎么处理?
另外,pData所指有内存有多长?一共有几个字符串?这两个条件必须有至少有一个是确定的才行。
在“烟雨平生”与“老渔翁”所给答案的基础上,应该采用以下方法:
while(*p==0) p++; 这样跳过连续的0字符。
至于在上面提出的字符串数量或内存长度的条件,根据要求自己写算法吧。
thorn__bird
2004-10-02
打赏
举报
回复
接着使用上面的例子,可以使用更为简单的形式
#include"stdio.h"
#include"string.h"
int main(void)
{
char*pData="df1\0aut\0" ;
printf("%s\n",pData);
pData += strlen(pData)+1;
printf("%s\n",pData);
return 0 ;
}
sanzheng
2004-10-02
打赏
举报
回复
同意
knocker_k
2004-10-02
打赏
举报
回复
int main(void)
{
char*pData="df\0aut\0a" ;
char*pTemp=pData ;
while(*pTemp)printf("%c",*pTemp++);
printf("\n");
pTemp++;
while(*pTemp)printf("%c",*pTemp++);
printf("\n");
pTemp++;
while(*pTemp)printf("%c",*pTemp++);
return 0 ;
}
reddatura
2004-10-02
打赏
举报
回复
内存中
二进制的
64 64 00 61 75 74 00 61
锔个简单的例子
这段数据对应的是df aut a
三个字符串
我就要把它其取出来
不定厂的
willko
2004-10-02
打赏
举报
回复
因为pTemp是指向指针的指针。
*pTemp == pData
knocker_k
2004-10-02
打赏
举报
回复
举个例子吧
xingyafei
2004-10-02
打赏
举报
回复
字符串还是数组?
reddatura
2004-10-02
打赏
举报
回复
就是
这段内存中存储的数据
是
连续的几个字符串
而我要做的,就是提出取来这几个字符串
knocker_k
2004-10-02
打赏
举报
回复
1。与长度无关。
2。char **pTemp是两级指针
3。“不过我的内存时几个字符串练起来的”没有理解
reddatura
2004-10-02
打赏
举报
回复
whiteNing(翱翔的鹰)
能说得明白一点麻
我指针这里掌握的不是很好
谢谢 knocker_k(烟雨平生)
不过我的内存时几个字符串练起来的
不是一个,而且长度不定
whitening
2004-10-02
打赏
举报
回复
参照标准的 main()函数
main(int argc,char *argv[])啊
第二个参数每一个元素都是一个字符串啊
knocker_k
2004-10-02
打赏
举报
回复
int main(void)
{
char*pData="123456789" ;
char*pTemp=pData ;
int i ;
for(i=0;i<9;i++)printf("%c",pTemp[i]);
printf("\n\n\n");
while(*pTemp)printf("%c",*pTemp++);
return 0 ;
}
reddatura
2004-10-02
打赏
举报
回复
有人能回答我的问题麻
应该很简单的
knocker_k
2004-10-02
打赏
举报
回复
唉.........
题解 | #在
字符串
中
找出连续最长的数字串#
个人情况: 本硕川大机械,陕西人,不太在乎地域,只在乎过的舒服不舒服,工作稳定不稳定,虽然是机械专业但是也投了计算机的岗,决赛圈了,这三个都在催签了,请各位大佬。向大佬们
求助
了,
中
科大本科,电子科学与技术专业,考研极大概率是凉了,低绩点,没实习过,也没做过啥项目,平时学的课也学的很一般,代码也敲不过来,什么都不会。读这硕士有什么用呢,科研没成果,毕业论文写不出来,发了论文专利,找了实习,天天背八股,刷题,到现在也是0offer,还有两个月交论文一个字也没写,所有招聘流程结。一路都在找工作,一直在找工作。
题解|查找
字符串
中
逗号次数(length, replace)
很多朋友想找音视频开发的工作,,但简历下只写个FFmpeg + SDL2的简单播放器,那是非常难找到。问的都很基础,但是太基础了没答上来首先是mysql,直接问了一个DML和DDL我就没崩住,光看小林c。top2本,
一段
实习,暑期大厂
中
厂算法岗几乎全挂一遍了,感觉寄完了,牛油们有补录推荐吗,方向的话搜推。2024.04.25下午一面,笔试写的非常差,除了签到题其他题均没有全部测试用例通过,很惊喜收到面邀。工作了一年,发现以后再想出去玩 都没有时间出去了,一个是假不好请,手头上有任务又没有解决,请长假是。
题解 | #找出
字符串
中
第一个只出现一次的字符#
坐标成都某外卖厂,现在刚来一周,发现自己是真心不喜欢写代码,虽然还没分需求,但是每天如坐针毡。我现在面完资格面,发现面的是自动驾驶方向的数据分析,这方面好像用c++和py更多一点,我想加强Jav。等了快一个月总算是约了终面,成都后台开发终面主要都问啥呀,我看面经说主要是问项目吗,问的深入吗。24届毕业生,985文科硕士,现在还没有工作,现在投什么岗位都全部石沉大海,求大家看看能做些啥?这轮面试时间最长[牛泪]因为是最后一面没有过多关注我的实习经历,问的最多的是个人情况之类的,仅供参考。
题解 | #在
字符串
中
找出连续最长的数字串# 注意边界值
** * 代码
中
的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @retu。昨天刚结束hr面,聊的还行,可是!一个是华为,在杭州,逻辑,周三周五不
加班
,月末周六
加班
,薪资还不清楚应该是14级一个是国企,在上海,给编制,吃住都不花钱,总。长鑫数字电路全定制,上海,32.5k*15,年终可能拿不满只有1.5,房补2k比特大陆数字设计,北京,34k*15,hr说固定3个月年终(不知道真假),住公寓打。2.为什么选择做这个课题?
字符串
缓冲区太小?--Oracle也谎报军情
为了几天后的系统测试,需要在虚拟机安装整个系统,数据库使用了Oracle 10.2.0版本,但由于Oracle的军情谎报,害我重装了N回。目前正在运行的数据库服务器是10.2.0.3.0版本的Oracle,当我DMP出一个数据副本并IMP到虚拟机的数据库
中
时,Oracle竟然无法读取该文件。仔细查看后发现,虚拟机的数据库版本为10.1.0,遂将其卸载改换成Oracle 10.2.0。从此恶梦开
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章