當前位置:首頁 » 編程語言 » c語言字元串指針
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言字元串指針

發布時間: 2022-02-22 23:49:03

c語言,字元串指針

m是char *型指針,name[z]是char型字元,二者類型不匹配。strcmp只能比較兩個字元串,所以anme[z]也不符合strcmp第二個形參類型的要求。試著改成strcmp(m,name);看看。

❷ C語言指針與字元串

*str 指向的是str字元數組的首地址,而前面的佔位符是%s, 這里如果是*str的話,會報指針錯誤的core

❸ c語言字元串指針

字元串指針與字元串數組一樣是有長度的哦。

❹ 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;

}

(4)c語言字元串指針擴展閱讀:

字元指針注意事項:

在字元指針中p是指針變數指向字元串首元素(前提對p指針沒有進行指針操作),p中存放首元素的地址(一旦被初始化就,系統就為我們分配好了地址,而且地址也不能改變,因為字元指針是一個只讀變數,不能企圖對一個初始化好的指針進行內部修改)

而*p是對指針變數p進行解引用操作,也就是指針所指向的內容,而&p是對指針變數取地址,所以也就肯定不會和p的值相等,因為字元指針系統會為其分配內存,p的值是字元串首元素的地址。

❺ 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語言 用指針處理字元串

/*優先順序問題,給你改好了*/
#include <stdio.h>
int main(void)
{
char buffer[100];
char *pbuffer = buffer;
size_t index = 0;

fflush(stdin);

for( ; index<sizeof(buffer) ; index++)
{
if((*(pbuffer+index) = getchar()) == '\n') //注意這里的括弧
{
*(pbuffer+index) = '\0';
break;
}
}
if((index == sizeof(buffer))&&(*(pbuffer+index)!='\0'))
printf("You ran out of space in the buffer.");

printf("%s",buffer);
return 0;
}

❼ 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語言 指針字元串的使用

第一個程序,樓主傳進去的是個地址t,然後對執行t++;就這塊錯了,t++後返回的不是字元串的起始地址了,地址已經發生變化了。

❾ c語言,字元指針(字元串)問題

char * inputWord; 定義的是指針,並沒有申請存放字元串的空間,改為字元數組即可。如
char inputWord[100];
還有,語句scanf("%s",&inputWord);中的&應去掉,改為
scanf("%s",inputWord);