当前位置:  技术问答>linux和unix

传char * 字符串问题

    来源: 互联网  发布时间:2017-05-11

    本文导语:  下面是一个函数,将int数组转化为字符数组 void unIntArraryTochar(unsigned  *sha1,char *md, int size) { md = (char*)malloc(20*sizeof(char));   int j = 0;    for(int i=0; i>24);          md[++j] = (char)(value>>16);          md[++j]...

下面是一个函数,将int数组转化为字符数组
void unIntArraryTochar(unsigned  *sha1,char *md, int size)
{
md = (char*)malloc(20*sizeof(char));
  int j = 0;
   for(int i=0; i>24);
         md[++j] = (char)(value>>16);
         md[++j] = (char)(value>>8);
         md[++j] = (char)(value);
         ++j;
   }   

接着是我的调用://sha1是非空的,size也已经赋值了

char *md = NULL;
 unIntArraryTochar(sha1,md,size);

但是我每次运行到这里,调用函数的时候出现段错误。于是我就把md的申请放到了调用unIntArraryTochar的前面,如下:
char *md = (char *)malloc(sizeof(char)*20);
 unIntArraryTochar(sha1,md,size);

这次运行就不会出错了。


我想知道为什么传入空字符串给函数会出现段错误?谢谢大神们帮忙!

|
char *md = NULL; 

因为你没有分配内存来存放,就像你把东西挪入某个地方首先要有空间。

    
 
 

您可能感兴趣的文章:

  • 使用C语言递归与非递归实现字符串反转函数char *reverse(char *str)的方法
  • 求救啊!!1如何把off_t类型转换为字符串char[]???
  • 关于const char 如何指向不同的字符串
  • 汉字组成的字符串转成char[]数组,再组合起来就出现乱码
  • 如何将一个char str[256]类型的字符串显示在qt界面的label上
  • mysql获取字符串长度函数(CHAR_LENGTH)
  • 如何判断一个字符串里的一个CHAR是由回车和换行符组成的。
  • 因为mmap函数返回值是void*类型,是否可以将其强制转换成char*类型,按字符串操作,然后将修改重新写入内存映像即可????
  • 求教 Linux 下 char 字符串 与unicode 字符串相互转换的函数 。
  • Oracle to_char 日期转换字符串语句分享
  • C# char类型字符转换大小写的实现代码
  • 一个小问题:如何将一个char字符转换为相应的ASCII码值?
  • *****送分了!哪位知道怎么将字符数组char[]里的每个值都赋为空*****
  • 各位大侠,请问如果一个char数组很大,比如10000000个字符,能不能只用一个String装下它?
  • linux下关于char *p字符指针的问题
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • const char 和char 的转换问题
  • char*和char**运用的问题
  • 问个低级的问题:在windows里 有 char * strfilename1 =new char[255];strcpy(strfilename1,"C:\finger2.bmp")的用法,在纯java里怎么写
  • 内核中static inline int strncmp(const char * cs,const char 的问题
  • 小问题:如何将int转换为char?
  • c 问题main(volatile int argc, char **volatile argv)/**问题
  • 菜鸟问题-如何将char[]转化为string??
  • 新手问题,立刻给分:如何把一个char[]的值赋给byte[]
  • ejb的finder方法找不到表中char类型数据的问题
  • 请问一个CHAR的问题,谢谢。
  • char 类型如何与16进制类型比较的问题,紧急
  • char *p问题。
  • 弱问题int main __P((int, char *[]));中__P什么意思?
  • 关于“char[] ”型数组的显示问题
  • byte、char数组转换为String的问题
  • 探讨编写int strlen(char *strDest);不允许定义变量的问题
  • u32型与char型数组内容的读写与printf显示有问题
  • statvfs(const char *path, struct statvfs *buf)的问题
  • 共享内存问题,只能得到int值,不能得到char*的值?
  • 关于jsp连接oracle char类型数据显示问题
  • java命名空间java.sql类types的类成员方法: char定义及介绍
  • u_char数据类型?u_char与char是什么关系?
  • java命名空间javax.lang.model.type枚举typekind的类成员方法: char定义及介绍
  • 判斷兩個char[]相等用什麽函數?我用(char1.equals(char2))它總是認爲不等,爲什麽??
  • java命名空间java.awt.event类keyevent的类成员方法: char_undefined定义及介绍
  • 原来char c=70和char c='u0070'有区别的
  • java命名空间javax.print类docflavor.char_array的类成员方法: text_plain定义及介绍
  • 谁能告诉我char*被强制转化成char**,内部是怎么运算的?
  • java命名空间java.awt.font类textattribute的类成员方法: char_replacement定义及介绍
  • main(int argc,char *argv[])和main(int argc,char **argv[])的区别
  • java命名空间javax.print类docflavor.char_array的类成员方法: text_html定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,