当前位置:首页 » 编程语言 » c语言字符串指针

c语言字符串指针

发布时间: 2022-02-11 18:04:46

‘壹’ c语言字符串指针问题

char * x(char *a,char *b){//a字符串,b字符
int i=0,j=0;
char c[100];//接收去掉*b字符的字符串
while(a[i]!='\0'){
if(a[i]!=*b){
c[j]=a[i];j++
}
i++;
}
c[j]='\0';
return c;
}

‘贰’ C语言,字符串指针

m是char *型指针,name[z]是char型字符,二者类型不匹配。strcmp只能比较两个字符串,所以anme[z]也不符合strcmp第二个形参类型的要求。试着改成strcmp(m,name);看看。

‘叁’ C语言字符指针怎么输入谢谢

可以参考下面的代码:

#include <stdio.h>

#include <string.h> // 要用尖括号

intmain()

{

char*str;

str = (char*)malloc(sizeof(char) * 20); // 申请20个char长度的空间

scanf("%s", str); //输入

printf("%s ", str); // 输出

free(str); // 释放空间

return0;

}

(3)c语言字符串指针扩展阅读:

字符指针注意事项:

在字符指针中p是指针变量指向字符串首元素(前提对p指针没有进行指针操作),p中存放首元素的地址(一旦被初始化就,系统就为我们分配好了地址,而且地址也不能改变,因为字符指针是一个只读变量,不能企图对一个初始化好的指针进行内部修改)

而*p是对指针变量p进行解引用操作,也就是指针所指向的内容,而&p是对指针变量取地址,所以也就肯定不会和p的值相等,因为字符指针系统会为其分配内存,p的值是字符串首元素的地址。

‘肆’ C语言字符串和指针用法

void time1(char * s )
{
long p;
struct tm *now;
p = time(NULL);
now = localtime(&p);
s = asctime(now); //这里改变的形参变量s本身的值,与实参s无关,所以,这里s的变化与主函数中的s没有关系!
return ;
}

一、
#include<stdio.h>
#include<time.h>

voidtime1(char**s);
intmain(void)
{
char*s;
time1(&s);
printf("%s",s);
return0;
}
voidtime1(char**s)//传二维指针,带回去结果!
{
longp;
structtm*now;
p=time(NULL);
now=localtime(&p);
*s=asctime(now);
}

二、
#include<stdio.h>
#include<time.h>
#include<string.h>

voidtime1(char*s);
intmain(void)
{
chars[32]={''};
time1(s);
printf("%s",s);
return0;
}
voidtime1(char*s)
{
longp;
structtm*now;
p=time(NULL);
now=localtime(&p);
strcpy(s,asctime(now));//这时的s是数组,可以赋值
}

‘伍’ c语言,字符指针(字符串)问题

char * inputWord; 定义的是指针,并没有申请存放字符串的空间,改为字符数组即可。如
char inputWord[100];
还有,语句scanf("%s",&inputWord);中的&应去掉,改为
scanf("%s",inputWord);

‘陆’ C语言指针与字符串

*str 指向的是str字符数组的首地址,而前面的占位符是%s, 这里如果是*str的话,会报指针错误的core

‘柒’ c语言简单字符串指针

char *p;定义了一个指针,但是系统还未对它初始化,所以它指向的是一个未知的地址,然后你调用解引用操作(*p)对它赋值,相当于是对一个未知的地址赋值,系统是不允许的,所以出错。
char *p="abcd";printf("%s",p);

‘捌’ c语言指针,字符串

声明中 int *s; 声明 s 是 指针,用于指向整型。
语句中 *s 表示 指针指向的值,s 表示 指针指向的地址。
第4题,int a=3,b=4,c=5; 条件 c>b>a 分步计算 为 ((c>b)>a)
(c>b) is true, 得 1, (1<a) is false, 得 0, 0 && anything 得 0。
0 ? 2:1 三目运算,false 得 冒号后 的 1。答案 1.

strcpy(s,"hello); s 是指针,无字符串存放单元,所以错。
str = "hello"+1; 赋值运算不允许,要用函数
*&(str+1) 中 涉及左值,不允许。
s = str+1; 正确,地址运算,让 s 指向 str[1] 的地址。

‘玖’ c语言字符串指针

字符串指针与字符串数组一样是有长度的哦。

热点内容
求中点编程 发布:2025-05-18 01:03:14 浏览:840
安卓pay是什么 发布:2025-05-18 01:02:27 浏览:747
免费手游挂机脚本 发布:2025-05-18 00:55:43 浏览:354
sd卡手机存储系统存储 发布:2025-05-18 00:55:28 浏览:637
pythonlistintstr 发布:2025-05-18 00:48:18 浏览:604
轻应用缓存 发布:2025-05-18 00:31:02 浏览:252
鸟存储空气 发布:2025-05-18 00:20:24 浏览:201
linux刻录iso 发布:2025-05-18 00:16:15 浏览:663
php动态参数 发布:2025-05-18 00:12:05 浏览:425
安卓应用上传 发布:2025-05-18 00:11:57 浏览:803