This code cannot convert char*
to char**
. I don't know what it means.
Here is my code:
#include <stdio.h>
#include <conio.h>
#include <string.h>
shift( char *s[] , int k )
{
int i,j;
char temp[50];
for( i = 0 ; i < k ; i++ )
temp[i]=*s[i] ;
for( j = 0 ; j < strlen(*s) ; j++ )
{
*s[j] = *s[k] ;
k++ ;
}
strcpy(*s,temp);
}
main()
{
int i,j=0,k;
char s[30];
printf("please enter first name ");
gets(s);
scanf("%d",&k);
shift( &s , k);
puts(s);
getch();
}
The program is supposed to:
read string S1 and index âKâ, then call your own function that rotates the string around the entered index. The output of your program should be as follows:
Enter your string: AB3CD55RTYU Enter the index of the element that rotates the string around: 4 The entered string: AB3CD55RTYU Enter the element that rotates the string around: D The rotated string is : D55RTYUAB3C
&s
meanschar (*)[30]
(pointer to array of char[30]) notchar *[]
(array of pointer to char)For example, It modified as follows.