MMM*_*MMM -1 c string pointers uppercase
我正在学习C:如何通过迪特尔进行编程.在Pointers一章中,有这个示例代码:
#include <stdio.h>
#include <ctype.h>
void convertToUppercase(char *sPtr);
int main( void )
{
char string[] = "cHaRaCters and $32.98";
printf( "The string before conversion is: %s", string );
convertToUppercase( string );
printf( "\nThe string after conversion is: %s\n", string );
}
void convertToUppercase(char *sPtr)
{
while(*sPtr != '\0') {
*sPtr = toupper(*sPtr);
++*sPtr;
}
}
Run Code Online (Sandbox Code Playgroud)
当我编译它时,没有问题.但是当我运行它时,没有任何反应.我找不出有什么问题!
你需要增加指针而不是值更改++*sPtr为++sPtr
#include <stdio.h>
#include <ctype.h>
void convertToUppercase(char *sPtr);
int main( void )
{
char string[] = "cHaRaCters and $32.98";
printf( "The string before conversion is: %s", string );
convertToUppercase( string );
printf( "\nThe string after conversion is: %s\n", string );
}
void convertToUppercase(char *sPtr)
{
while(*sPtr != '\0') {
*sPtr = toupper(*sPtr);
++sPtr;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
77 次 |
| 最近记录: |