首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

c语言字符串有关问题

2012-03-09 
c语言字符串问题定义了这样一个字符串char*str 2907.9551 怎么将它变成如下字符串北纬:29度07.9551分

c语言字符串问题
定义了这样一个字符串   char   *str= "2907.9551 "     怎么将它变成如下字符串   "北纬:29度07.9551分 "   并将这个字符串赋值给另一个char   型指针   比如   char   *str1
望高手赐教

[解决办法]
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);
[解决办法]
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;
[解决办法]
我做了一个
带有详细说明
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_);


}

热点排行