c语言字符串问题

panda520 2007-06-24 11:38:42
定义了这样一个字符串 char *str="2907.9551" 怎么将它变成如下字符串 "北纬:29度07.9551分" 并将这个字符串赋值给另一个char 型指针 比如 char *str1
望高手赐教
...全文
158 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
comman_ndsc 2007-06-24
  • 打赏
  • 举报
回复
ls正解,不错不错,学习了。

再加一个字符指针char *str1,把最后 str_ 赋给 str1 就ok了。
liqiang123abc 2007-06-24
  • 打赏
  • 举报
回复
忘了把组合字符赋值给新指针了
很容易的只要稍微改动就可以了
liqiang123abc 2007-06-24
  • 打赏
  • 举报
回复
估计楼主是一位新手
因此带了详细说明
也没有申请内存比较复杂的操作
连头文件都带上了
只要把代码复制+粘贴
编译就可以了
csdn5211 2007-06-24
  • 打赏
  • 举报
回复
哈哈,一系列小操作。
liqiang123abc 2007-06-24
  • 打赏
  • 举报
回复
我做了一个
带有详细说明
VC6.0下编译

#include <windows.h>
#include <stdio.h>
#include <stdlib.h>



char * str="2907.9551";


void main()
{

char str_0[56];
char str_1[56];

char str_[256];

//将前边2个数字复制进第一个数组
memcpy(str_0,str,2);
str_0[2]='\0';
//显示第一个数组内容
printf("%s\n",str_0);

//将后边的数字复制进第二个数组
strcpy(str_1,&str[2]);
//显示第二个数组内容
printf("%s\n\n",str_1);


//组合成需要的字符
sprintf(str_,"北纬:%s度%s分\n",str_0,str_1);
//显示内容
printf("%s\n",str_);


}
cceczjxy 2007-06-24
  • 打赏
  • 举报
回复
char *str="2907.9551",*ptr;
int i;
char *buf=(char *)malloc(32);
sscanf(str,"%2d",&i);
ptr=str;
ptr+=2;
memset(buf,0,sizeof(buf));
sprintf("北纬:%2d度%s分",i,ptr);
rturn buf;
  • 打赏
  • 举报
回复
char *str="2907.9551";
char *str1=new char[128];
memset(str1,0,128);
strcpy( str1 , "北纬:" );
char sz[8]={0};
strncpy( sz , str , 2 );
strcat( str1 , sz );
strcat( str1 , "度" );
strcat( str1 , str +2 );
strcat(str1 , "分" );
printf("%s\n",str1);

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧